home *** CD-ROM | disk | FTP | other *** search
/ Chip: Internet / Chip Internet.iso / viewer / mpeg-faq.txt < prev   
Text File  |  1995-07-18  |  447KB  |  10,493 lines

  1.  
  2. Archive-name: mpeg-faq/part0
  3. Last-modified: 1995/06/07
  4. Version: v 4.0 95/06/07
  5. Posting-Frequency: bimonthly
  6.  
  7.         ====================================================
  8.         THE MPEG-FAQ           [Version 4.0 - 07. June 1995]
  9.         ====================================================
  10.         PHADE SOFTWARE Leibnizstr. 30, 10625 Berlin, GERMANY
  11.         Inh. Frank Gadegast          Fon/Fax: +49 30 3128103
  12.  
  13.         phade@cs.tu-berlin.de
  14.         http://www.cs.tu-berlin.de/~phade
  15.  
  16.  
  17. ===========================================================================
  18.  
  19. This is my summary about MPEG.
  20.  
  21. It's the seventh publication of this file. Lots of information has been
  22. added (which has surely brought errors with it, see Murphy's Law).
  23.  
  24. This edition is REALLY different to the previous one.
  25.  
  26. ===========================================================================
  27.  
  28. You should receive nine files called:
  29.  
  30.   MPEG-FAQ: multimedia compression [0/8] <- that's this file
  31.   MPEG-FAQ: multimedia compression [1/8] <- that are the eight parts of
  32.   MPEG-FAQ: multimedia compression [2/8] <- the MPEG-FAQ-text-file
  33.   MPEG-FAQ: multimedia compression [3/8]
  34.   MPEG-FAQ: multimedia compression [4/8]
  35.   MPEG-FAQ: multimedia compression [5/8]
  36.   MPEG-FAQ: multimedia compression [6/8]
  37.   MPEG-FAQ: multimedia compression [7/8]
  38.   MPEG-FAQ: multimedia compression [8/8]
  39.  
  40.  
  41.  UNPACKING the FAQ-File
  42. ========================
  43.  
  44. Save the eight files in the right order to ONE file, strip every header-
  45. information of the file and there you are.
  46.  
  47. You can always get the newest version of the FAQ and the index-file
  48. via Mosaic at http://www.cs.tu-berlin.de/~phade/mpegfaq/index.html
  49.  
  50.  
  51.  SYSADM
  52. ========
  53.  
  54. If you are a system-administrator please ensure to delete the old version
  55. of the MPEG-FAQ. Please store the new version as MPEGFA40.TXT on your local
  56. ftp-server or BSS and compress it to your needs, but be sure the name
  57. MPEGFA40 is included (hopefully in big letters) in the final name.
  58.  
  59.  
  60.  NEWS
  61. ======
  62.  
  63. The FAQ itself will be posted as txt-file to several news-groups
  64. include the *.answers and to alt.binaries.multimedia groups.
  65.  
  66.  
  67.  ERRORS
  68. ========
  69.  
  70. If you can't unpack the FAQ, please reply immediately to me:
  71.  
  72.   phade@cs.tu-berlin.de
  73.  
  74. to prevent others from the same errors ...
  75.  
  76.  
  77. Enjoy MPEG, Phade
  78.  
  79. <=====================================================>
  80.  PHADE Software, Leibnizstr. 30, 10625 Berlin, GERMANY
  81.  Inh. Frank Gadegast           Fon/Fax: +49 30 3128103
  82.  
  83.  phade@contrib.de    http://www.is.in-berlin.de/~phade
  84.  
  85.  
  86. Archive-name: mpeg-faq/part1
  87. Last-modified: 1995/06/07
  88. Version: v 4.0 95/06/07
  89. Posting-Frequency: bimonthly
  90.  
  91. ===========================================================================
  92.  
  93. ~Subject: SECTION 0. - INTRO
  94.  
  95.         ====================================================
  96.         THE MPEG-FAQ           [Version 4.0 - 07. June 1995]
  97.         ====================================================
  98.         PHADE SOFTWARE Leibnizstr. 30, 10625 Berlin, GERMANY
  99.         Inh. Frank Gadegast          Fon/Fax: +49 30 3128103
  100.  
  101.         phade@cs.tu-berlin.de
  102.         http://www.cs.tu-berlin.de/~phade
  103.  
  104.  
  105. It's the seventh publication of this file. Lots of information has been
  106. changed (which has surely brought errors with it, see Murphy's Law).
  107.  
  108. This seventh addition is very different to the previous one, Version 3.2.
  109.  
  110. First:    The location of this file is:
  111.  
  112.           URL: ftp://ftp.cs.tu-berlin.de/pub/msdos/dos/graphics/mpegfa40.zip
  113.                [130.149.17.7]
  114.  
  115.           My MPEG-related software and my DOS-ports of several
  116.           programs can be found there too.
  117.  
  118. Second:   This FAQ is now in digest format (read below).
  119.  
  120. Third:    "The Internet MPEG CD-Rom" is there ! Our brilliant
  121.           collecting of everything that belongs to MPEG. For only
  122.           DM 49,90 ! Get it ! More than 600 MB of movies, songs,
  123.           documentation and utilities ! Read below, about how to Order !
  124.  
  125. Fourth:   This FAQ is available now in HTML-format under the
  126.  
  127.                  URL=http://www.cs.tu-berlin.de/mpegfaq/
  128.  
  129.           So don't get irretated by some HTML-commands in this
  130.           ASCII-text, that are just some pictures ...
  131.  
  132. Fifth:    This FAQ was and is copyrighted by the author and maintainer.
  133.           Read the copyright information below.
  134.  
  135. Sixth:    The newest FAQ and other MPEG-related information and
  136.           utilities for MSDOS and Sun's can always be loaded using
  137.           WWW from:
  138.  
  139.                  URL=http://www.cs.tu-berlin.de/~phade
  140.  
  141.           And surely, there are more interesting things to find ;o)
  142.  
  143. Seventh:  New issues are: MPEG-1+, LAYER3-FAQ, MacAudioTools, WWW-pointer,
  144.           MPEG hardware list
  145.  
  146.  
  147. I add my comments in brackets [], lines (---- or ====) seperate the
  148. chapters and questions.
  149.  
  150. Please try and find out more information yourself. I had enough to do by
  151. getting and preparing this information. And only bother me with file-
  152. request if its not possible for you to get it somewhere else !!!
  153.  
  154. If you want to contribute to this FAQ in any way, please email me
  155. (probably by replying to this posting). My email address is:
  156.  
  157.   phade@cs.tu-berlin.de
  158.  
  159. Or send any additional information via fax or e-mail. The fax is only
  160. reachable between Mo.-Fr. from 10.00-13.00 and from 15.00-18.30 german
  161. time.
  162.  
  163.     KeyJ Phade (Frank Gadegast)
  164.  
  165.  
  166. -------------------------------------------------------------------------------
  167.  
  168. ~Subject: Disclaimer
  169.  
  170.             I HAVE NOTHING TO DO WITH THE NAMED COMPANIES, NO BUSINESS,
  171.             IT'S JUST MY PERSONAL INTERESTED. COMPANIES ARE NAMED,
  172.             BECAUSE THEY ARE THE FIRST, BRINGING REAL MULTIMEDIA TO THE
  173.             WORLD. SURE I MAKE ADVERTS FOR THEM WITH THIS FAQ, BUT HOPE-
  174.             FULLY YOU, AS A READER OF THIS FAQ, WILL FORCE THEM TO PRODUCE
  175.             MORE AND BETTER PRODUCTS.
  176.  
  177.             MOST ADDITIONAL INFORMATION IS WRITTEN AS PERSONAL COMMENT,
  178.             AND SHOULD NOT BE TAKEN AS PROOFEN FACTS. INFORMATION IS
  179.             PRESENTED "AS IS", COULD BE OUT OF DATE AND CANNOT BE
  180.             GARANTIED TO BE THE TRUTH. THIS INFOMATION COMES WITHOUT
  181.             WARRANTY OF ANY KIND, INCLUDING WITHOUT LIMITATION OF
  182.             WARRANTIES OF MERCHANTABILITY, FITNESS FOR PARTICULAR
  183.             PURPOSE AND NON-INFRINGEMENT.
  184.  
  185.             UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, TORT, CONTRACT,
  186.             OR OTHERWISE, SHALL THE AUTHOR BE LIABLE TO YOU OR ANY OTHER
  187.             PERSON FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL
  188.             DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES
  189.             FOR LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER FAILURE OR
  190.             MALFUNCTION, OR ANY AND ALL OTHER COMMERCIAL DAMAGES OR LOSSES.
  191.  
  192.             Frank Gadegast
  193.  
  194. -------------------------------------------------------------------------------
  195.  
  196. ~Subject: Copyright information
  197.  
  198.             THIS COMPILATION OF INFORMATION IS COPYRIGHTED BY THE AUTHOR
  199.             AND MAINTAINER, CURRENTLY FRANK GADEGAST. ANY NON-COMMERCIAL
  200.             USE OF IT, OR PARTS OF IT IS ALLOWED, UNTIL THE USE OF IT IS
  201.             REPORTED TO THE AUTHOR AND THE COMPILATION IS KEPT UNCHANGED
  202.             ADDITONAL, IF PARTS OF IT ARE USED, INFORMATION HAS TO BE ADDED
  203.             WITH THAT PART, WHO THE AUTHOR OF THAT PARTS IS, THAT IT BELONGS
  204.             TO THE COMPLETE COMPILATION AND WHERE TO FIND THE COMPLETE
  205.             COMPILATION.
  206.  
  207.             COMMERCIAL USE CAN BE GRANTED IN SPECIAL CIRCUMSTANCES, FEEL
  208.             FREE TO ASK AND SEND A DESCRIPTION OF THE INTENDED USE, TO
  209.             RECEIVE A CERTIFICATION.
  210.  
  211.             ANY NON-REPORTED OR NON-CERTIFIED COMMERCIAL USE OF THIS
  212.             COMPILATION IS A VIOLATION OF GERMAN COPYRIGHT LAW !
  213.  
  214.             ANY RE-PUBLICATION OF INFORMATION IN THIS COMPILATION SHOULD
  215.             BE REPORTED TO THE AUTHOR AND SHOULD TO BE QUOTED IN THE NEW
  216.             PUBLICATION.
  217.  
  218. -------------------------------------------------------------------------------
  219.  
  220. ~Subject: Digest format
  221.  
  222. It should be possible to read this FAQ with a threaded newsreader or emacs
  223. in FAQ-mode to enable you, to jump from one question to another, because
  224. this FAQ is organized as a digest.
  225.  
  226. You can move to the next question with the digest commands in gnus, rn or
  227. other newsreaders, or with a regex search for ^~Subject or ^--.
  228.  
  229. -------------------------------------------------------------------------------
  230.  
  231. ~Subject: What questions are getting answered in this FAQ ?
  232.  
  233. SECTION 0. - INTRO
  234.     Disclaimer
  235.     Copyright information
  236.     Digest format
  237.     What questions are getting answered in this FAQ ?
  238.     SECTION 1. - WHAT IS MPEG-VIDEO/VIDEO
  239.     What is MPEG ?
  240.     What is MPEG-Audio then ?
  241.     What is the Audio Layer 3 then ?
  242.     What is MPEG-1+ ?
  243.     What is MPEG-2 ?
  244.     What happened at the MPEG - NY meeting ?
  245. SECTION 2. - PROFESSIONAL SOFTWARE
  246.     SUBSECTION - DOS
  247.     MPEG Encoder by Xing
  248. SUBSECTION - WINDOWS
  249.     MPEG ARCADETM
  250.     XingSound
  251.     XingCD
  252. SUBSECTION - UNIX
  253.     Xing Distributed Media Architecture
  254.     NVR Research Kit
  255.     Demo of NVR Digital Media Development Kit
  256.     How will I get the NVR-Software ?
  257. SECTION 3. - FREE AVAILABLE SOFTWARE
  258. SUBSECTION - DOS
  259.     layr_100
  260.     mpeg2ppm
  261.     vmpeg
  262.     cmpeg
  263.     dmpeg
  264.     secmpeg
  265.     mpegstat
  266.     enc11dos
  267.     pvrg MPEG
  268. SUBSECTION - Windows
  269.     XingIt
  270.     mpgaudio
  271. SUBSECTION - WINDOWS-NT
  272.     mpeg2ply
  273.     mpegplay
  274. SUBSECTION - OS/2
  275.     mp
  276. SUBSECTION - X-WINDOWS and UNIX
  277.     Berkeley's MPEG Tools
  278.     MPEG-1 Video Software Encoder
  279.     MPEG Video Software Decoder
  280.     MPEG Video Software Analyzer
  281.     MPEG Blocks Analyzer
  282.     MPEG Video Software Statistics Gatherer
  283.     xmg
  284.     mpegstat
  285.     mplex
  286.     xmplay
  287.     xplayer
  288.     xmpeg.tk
  289.     mpeg2encode / mpeg2decode
  290.     layr_100
  291.     mpegaudio
  292.     maplay
  293.     Scanning MPEG's ...
  294.     MPEG decoder...
  295.     MPEGTool
  296.     What is "SECMPEG" ?
  297.     PVRG-MPEG Codec
  298.     wdgt
  299. SUBSECTION - VMS
  300.     vms MPEG
  301. SUBSECTION - MacIntosh
  302.     Sparcle
  303.     Qt2MPEG
  304.     Audio on Macintosh ?!
  305. SUBSECTION - Atari
  306. SUBSECTION - Amiga
  307.     MPEG2DCTV
  308. SUBSECTION - NeXT
  309.     MPEG_Play.app
  310.     mpegnext
  311. SUBSECTION - SGI
  312. SECTION 4. - MPEG-RELATED HARDWARE
  313.     MPEG audio Layer-3
  314.     Video-Maker
  315.     Some MPEG chips
  316.     Optibase
  317.     ReelMagic
  318.     Cinerama
  319.     XingIt!-card
  320.     MPEG-decompression hardware list
  321.     Amiga CD32
  322. SECTION 5. - MAILBOX-ACCESS
  323.     Genoabox
  324.     Xing Technologies BBS and fax
  325. SECTION 6. - FTP-ACCESS
  326.     FTP-ACCESS - Overview
  327.     MPEG-2 validation bitstreams
  328.     Audio streams and utils
  329.     Accessing Aminet
  330.     Where will I find test-material for MPEG-encoders ?
  331. SECTION 7. - WWW-ACCESS
  332.     Where is the WWW-home of this FAQ ?
  333.     An Interactive Explanation on the Web ?
  334.     Where is the WWW-demo of "The Internet MPEG CD-Rom" ?
  335.     Which archive is mostly related to MPEG-Audio ?
  336.     What's with Bryan Woodworth ftp-area ?
  337.     Rock'n'Roll stored in MPEG on the Web ?
  338.     Where can I find space movies coded in MPEG ?
  339.     Movies on Web-site
  340.     Where can I find fractal movies coded in MPEG ?
  341.     Is qt2mpeg on the Web ?
  342.     What are other good URL's ?
  343. SECTION 8. - MAIL ORDER
  344.     The Internet MPEG CD-Rom
  345.     Conversion, WWW and CD-Rom production service
  346.     How can I order information from C-CUBE ?
  347. SECTION 9. - ADDITIONAL INFORMATION
  348.     What are the MPEG standard documents ?
  349.     So, the Xing decoder is cheating, right ?
  350.     What is Aware Inc. doing ?
  351.     Will MPEG be included in QuickTime ?
  352.     What's about MPEG-2 software ?
  353.     What about good MPEG Hardware encoders (Optivision) ?
  354.     What's about CD-I ?
  355.     What is the PCMotion Player ?
  356.     What is the MPEG-2 ISO number ?
  357.     Some papers about MPEG-audio
  358.     Where can I find more documents about what Berkeley is doing ?
  359.     Is there a book about MPEG ?
  360.     Who are CD-I producers ?
  361.     Where can I get VideoCD and CD-I coding ?
  362.     Where can I do MPEG encoding ?
  363.     What the problem with all these file extensions for MPEG-files ?
  364.     How can I do RTP encapsulation of MPEG1/MPEG2 ?
  365.     Wo kann ich den MPEG-standard bestellen ?
  366. SECTION 10. - WHERE TO FIND MORE INFOS
  367.     What newsgroups discuss MPEG ?
  368.     How can 'archie' help me ?
  369. SECTION 11. - QUESTIONS
  370.  
  371. ===========================================================================
  372.  
  373. ~Subject: SECTION 1. - WHAT IS MPEG-VIDEO/VIDEO
  374.  
  375. -------------------------------------------------------------------------------
  376.  
  377. ~Subject: What is MPEG ?
  378.  
  379. From comp.compression Mon Oct 19 15:38:38 1992
  380. Sender: news@chorus.chorus.fr
  381. Author: Mark Adler <madler@cco.caltech.edu>
  382.  
  383. [71] Introduction to MPEG (long)
  384.        What is MPEG?
  385.        Does it have anything to do with JPEG?
  386.        Then what's JBIG and MHEG?
  387.        What has MPEG accomplished?
  388.        So how does MPEG I work?
  389.        What about the audio compression?
  390.        So how much does it compress?
  391.        What's phase II?
  392.        When will all this be finished?
  393.        How do I join MPEG?
  394.        How do I get the documents, like the MPEG I draft?
  395.  
  396. [ There is no newer version of this part so far. Whoever wants to update ]
  397. [ this description, should do the job and send it over.                  ]
  398.  
  399. Written by Mark Adler <madler@cco.caltech.edu>.
  400.  
  401. Q. What is MPEG?
  402. A. MPEG is a group of people that meet under ISO (the International
  403.    Standards Organization) to generate standards for digital video
  404.    (sequences of images in time) and audio compression.  In particular,
  405.    they define a compressed bit stream, which implicitly defines a
  406.    decompressor.  However, the compression algorithms are up to the
  407.    individual manufacturers, and that is where proprietary advantage
  408.    is obtained within the scope of a publicly available international
  409.    standard.  MPEG meets roughly four times a year for roughly a week
  410.    each time.  In between meetings, a great deal of work is done by
  411.    the members, so it doesn't all happen at the meetings.  The work
  412.    is organized and planned at the meetings.
  413.  
  414. Q. So what does MPEG stand for?
  415. A. Moving Pictures Experts Group.
  416.  
  417. Q. Does it have anything to do with JPEG?
  418. A. Well, it sounds the same, and they are part of the same subcommittee
  419.    of ISO along with JBIG and MHEG, and they usually meet at the same
  420.    place at the same time.  However, they are different sets of people
  421.    with few or no common individual members, and they have different
  422.    charters and requirements.  JPEG is for still image compression.
  423.  
  424. Q. Then what's JBIG and MHEG?
  425. A. Sorry I mentioned them. Ok, I'll simply say that JBIG is for binary
  426.    image compression (like faxes), and MHEG is for multi-media data
  427.    standards (like integrating stills, video, audio, text, etc.).
  428.    For an introduction to JBIG, see question 74 below.
  429.  
  430. Q. Ok, I'll stick to MPEG.  What has MPEG accomplished?
  431. A. So far (as of January 1992), they have completed the "Committee
  432.    Draft" of MPEG phase I, colloquially called MPEG I.  It defines
  433.    a bit stream for compressed video and audio optimized to fit into
  434.    a bandwidth (data rate) of 1.5 Mbits/s.  This rate is special
  435.    because it is the data rate of (uncompressed) audio CD's and DAT's.
  436.    The draft is in three parts, video, audio, and systems, where the
  437.    last part gives the integration of the audio and video streams
  438.    with the proper timestamping to allow synchronization of the two.
  439.    They have also gotten well into MPEG phase II, whose task is to
  440.    define a bitstream for video and audio coded at around 3 to 10
  441.    Mbits/s.
  442.  
  443. Q. So how does MPEG I work?
  444. A. First off, it starts with a relatively low resolution video
  445.    sequence (possibly decimated from the original) of about 352 by
  446.    240 frames by 30 frames/s (US--different numbers for Europe),
  447.    but original high (CD) quality audio.  The images are in color,
  448.    but converted to YUV space, and the two chrominance channels
  449.    (U and V) are decimated further to 176 by 120 pixels.  It turns
  450.    out that you can get away with a lot less resolution in those
  451.    channels and not notice it, at least in "natural" (not computer
  452.    generated) images.
  453.  
  454. <IMG SRC="yuv411.gif">
  455.  
  456. <IMG SRC="yuv422.gif">
  457.  
  458. <IMG SRC="yuv444.gif">
  459.  
  460.    The basic scheme is to predict motion from frame to frame in the
  461.    temporal direction, and then to use DCT's (discrete cosine
  462.    transforms) to organize the redundancy in the spatial directions.
  463.    The DCT's are done on 8x8 blocks, and the motion prediction is
  464.    done in the luminance (Y) channel on 16x16 blocks.  In other words,
  465.    given the 16x16 block in the current frame that you are trying to
  466.    code, you look for a close match to that block in a previous or
  467.    future frame (there are backward prediction modes where later
  468.    frames are sent first to allow interpolating between frames).
  469.    The DCT coefficients (of either the actual data, or the difference
  470.    between this block and the close match) are "quantized", which
  471.    means that you divide them by some value to drop bits off the
  472.    bottom end.  Hopefully, many of the coefficients will then end up
  473.    being zero.  The quantization can change for every "macroblock"
  474.    (a macroblock is 16x16 of Y and the corresponding 8x8's in both
  475.    U and V).  The results of all of this, which include the DCT
  476.    coefficients, the motion vectors, and the quantization parameters
  477.    (and other stuff) is Huffman coded using fixed tables.  The DCT
  478.    coefficients have a special Huffman table that is "two-dimensional"
  479.    in that one code specifies a run-length of zeros and the non-zero
  480.    value that ended the run.  Also, the motion vectors and the DC
  481.    DCT components are DPCM (subtracted from the last one) coded.
  482.  
  483. Q. So is each frame predicted from the last frame?
  484. A. No.  The scheme is a little more complicated than that.  There are
  485.    three types of coded frames.  There are "I" or intra frames.  They
  486.    are simply a frame coded as a still image, not using any past
  487.    history.  You have to start somewhere.  Then there are "P" or
  488.    predicted frames.  They are predicted from the most recently
  489.    reconstructed I or P frame.  (I'm describing this from the point
  490.    of view of the decompressor.)  Each macroblock in a P frame can
  491.    either come with a vector and difference DCT coefficients for a
  492.    close match in the last I or P, or it can just be "intra" coded
  493.    (like in the I frames) if there was no good match.
  494.  
  495.    Lastly, there are "B" or bidirectional frames.  They are predicted
  496.    from the closest two I or P frames, one in the past and one in the
  497.    future.  You search for matching blocks in those frames, and try
  498.    three different things to see which works best.  (Now I have the
  499.    point of view of the compressor, just to confuse you.)  You try using
  500.    the forward vector, the backward vector, and you try averaging the
  501.    two blocks from the future and past frames, and subtracting that from
  502.    the block being coded.  If none of those work well, you can intra-
  503.    code the block.
  504.  
  505.    The sequence of decoded frames usually goes like:
  506.  
  507.    IBBPBBPBBPBBIBBPBBPB...
  508.  
  509.    Where there are 12 frames from I to I (for US and Japan anyway.)
  510.    This is based on a random access requirement that you need a
  511.    starting point at least once every 0.4 seconds or so.  The ratio
  512.    of P's to B's is based on experience.
  513.  
  514.    Of course, for the decoder to work, you have to send that first
  515.    P *before* the first two B's, so the compressed data stream ends
  516.    up looking like:
  517.  
  518.    0xx312645...
  519.  
  520.    where those are frame numbers.  xx might be nothing (if this is
  521.    the true starting point), or it might be the B's of frames -2 and
  522.    -1 if we're in the middle of the stream somewhere.
  523.  
  524.    You have to decode the I, then decode the P, keep both of those
  525.    in memory, and then decode the two B's.  You probably display the
  526.    I while you're decoding the P, and display the B's as you're
  527.    decoding them, and then display the P as you're decoding the next
  528.    P, and so on.
  529.  
  530. Q. You've got to be kidding.
  531. A. No, really!
  532.  
  533. Q. Hmm.  Where did they get 352x240?
  534. A. That derives from the CCIR-601 digital television standard which
  535.    is used by professional digital video equipment.  It is (in the US)
  536.    720 by 243 by 60 fields (not frames) per second, where the fields
  537.    are interlaced when displayed.  (It is important to note though
  538.    that fields are actually acquired and displayed a 60th of a second
  539.    apart.)  The chrominance channels are 360 by 243 by 60 fields a
  540.    second, again interlaced.  This degree of chrominance decimation
  541.    (2:1 in the horizontal direction) is called 4:2:2.  The source
  542.    input format for MPEG I, called SIF, is CCIR-601 decimated by 2:1
  543.    in the horizontal direction, 2:1 in the time direction, and an
  544.    additional 2:1 in the chrominance vertical direction.  And some
  545.    lines are cut off to make sure things divide by 8 or 16 where
  546.    needed.
  547.  
  548. Q. What if I'm in Europe?
  549. A. For 50 Hz display standards (PAL, SECAM) change the number of lines
  550.    in a field from 243 or 240 to 288, and change the display rate to
  551.    50 fields/s or 25 frames/s.  Similarly, change the 120 lines in
  552.    the decimated chrominance channels to 144 lines.  Since 288*50 is
  553.    exactly equal to 240*60, the two formats have the same source data
  554.    rate.
  555.  
  556. Q. You didn't mention anything about the audio compression.
  557. A. Oh, right.  Well, I don't know as much about the audio compression.
  558.    Basically they use very carefully developed psychoacoustic models
  559.    derived from experiments with the best obtainable listeners to
  560.    pick out pieces of the sound that you can't hear.  There are what
  561.    are called "masking" effects where, for example, a large component
  562.    at one frequency will prevent you from hearing lower energy parts
  563.    at nearby frequencies, where the relative energy vs. frequency
  564.    that is masked is described by some empirical curve.  There are
  565.    similar temporal masking effects, as well as some more complicated
  566.    interactions where a temporal effect can unmask a frequency, and
  567.    vice-versa.
  568.  
  569.    The sound is broken up into spectral chunks with a hybrid scheme
  570.    that combines sine transforms with subband transforms, and the
  571.    psychoacoustic model written in terms of those chunks.  Whatever
  572.    can be removed or reduced in precision is, and the remainder is
  573.    sent.  It's a little more complicated than that, since the bits
  574.    have to be allocated across the bands.  And, of course, what is
  575.    sent is entropy coded.
  576.  
  577. Q. So how much does it compress?
  578. A. As I mentioned before, audio CD data rates are about 1.5 Mbits/s.
  579.    You can compress the same stereo program down to 256 Kbits/s with
  580.    no loss in discernable quality.  (So they say.  For the most part
  581.    it's true, but every once in a while a weird thing might happen
  582.    that you'll notice.  However the effect is very small, and it takes
  583.    a listener trained to notice these particular types of effects.)
  584.    That's about 6:1 compression.  So, a CD MPEG I stream would have
  585.    about 1.25 MBits/s left for video.  The number I usually see though
  586.    is 1.15 MBits/s (maybe you need the rest for the system data
  587.    stream).  You can then calculate the video compression ratio from
  588.    the numbers here to be about 26:1.  If you step back and think
  589.    about that, it's little short of a miracle.  Of course, it's lossy
  590.    compression, but it can be pretty hard sometimes to see the loss,
  591.    if you're comparing the SIF original to the SIF decompressed.  There
  592.    is, however, a very noticeable loss if you're coming from CCIR-601
  593.    and have to decimate to SIF, but that's another matter.  I'm not
  594.    counting that in the 26:1.
  595.  
  596.    The standard also provides for other bit rates ranging from 32Kbits/s
  597.    for a single channel, up to 448 Kbits/s for stereo.
  598.  
  599. Q. What's phase II?
  600. A. As I said, there is a considerable loss of quality in going from
  601.    CCIR-601 to SIF resolution.  For entertainment video, it's simply
  602.    not acceptable.  You want to use more bits and code all or almost
  603.    all the CCIR-601 data.  From subjective testing at the Japan
  604.    meeting in November 1991, it seems that 4 MBits/s can give very
  605.    good quality compared to the original CCIR-601 material.  The
  606.    objective of phase II is to define a bit stream optimized for these
  607.    resolutions and bit rates.
  608.  
  609. Q. Why not just scale up what you're doing with MPEG I?
  610. A. The main difficulty is the interlacing.  The simplest way to extend
  611.    MPEG I to interlaced material is to put the fields together into
  612.    frames (720x486x30/s).  This results in bad motion artifacts that
  613.    stem from the fact that moving objects are in different places
  614.    in the two fields, and so don't line up in the frames.  Compressing
  615.    and decompressing without taking that into account somehow tends to
  616.    muddle the objects in the two different fields.
  617.  
  618.    The other thing you might try is to code the even and odd field
  619.    streams separately.  This avoids the motion artifacts, but as you
  620.    might imagine, doesn't get very good compression since you are not
  621.    using the redundancy between the even and odd fields where there
  622.    is not much motion (which is typically most of image).
  623.  
  624.    Or you can code it as a single stream of fields.  Or you can
  625.    interpolate lines.  Or, etc. etc.  There are many things you can
  626.    try, and the point of MPEG II is to figure out what works well.
  627.    MPEG II is not limited to consider only derivations of MPEG I.
  628.    There were several non-MPEG I-like schemes in the competition in
  629.    November, and some aspects of those algorithms may or may not
  630.    make it into the final standard for entertainment video compression.
  631.  
  632. Q. So what works?
  633. A. Basically, derivations of MPEG I worked quite well, with one that
  634.    used wavelet subband coding instead of DCT's that also worked very
  635.    well.  Also among the worked-very-well's was a scheme that did not
  636.    use B frames at all, just I and P's.  All of them, except maybe one,
  637.    did some sort of adaptive frame/field coding, where a decision is
  638.    made on a macroblock basis as to whether to code that one as one
  639.    frame macroblock or as two field macroblocks.  Some other aspects
  640.    are how to code I-frames--some suggest predicting the even field
  641.    from the odd field.  Or you can predict evens from evens and odds
  642.    or odds from evens and odds or any field from any other field, etc.
  643.  
  644. Q. So what works?
  645. A. Ok, we're not really sure what works best yet.  The next step is
  646.    to define a "test model" to start from, that incorporates most of
  647.    the salient features of the worked-very-well proposals in a
  648.    simple way.  Then experiments will be done on that test model,
  649.    making a mod at a time, and seeing what makes it better and what
  650.    makes it worse.  Example experiments are, B's or no B's, DCT vs.
  651.    wavelets, various field prediction modes, etc.  The requirements,
  652.    such as implementation cost, quality, random access, etc. will all
  653.    feed into this process as well.
  654.  
  655. Q. When will all this be finished?
  656. A. I don't know.  I'd have to hope in about a year or less.
  657.  
  658. Q. How do I join MPEG?
  659. A. You don't join MPEG.  You have to participate in ISO as part of a
  660.    national delegation.  How you get to be part of the national
  661.    delegation is up to each nation.  I only know the U.S., where you
  662.    have to attend the corresponding ANSI meetings to be able to
  663.    attend the ISO meetings.  Your company or institution has to be
  664.    willing to sink some bucks into travel since, naturally, these
  665.    meetings are held all over the world.  (For example, Paris,
  666.    Santa Clara, Kurihama Japan, Singapore, Haifa Israel, Rio de
  667.    Janeiro, London, etc.)
  668.  
  669. Q. Well, then how do I get the documents, like the MPEG I draft?
  670. A. MPEG is a draft ISO standard. It's exact name is ISO CD 11172.
  671.    The draft consists of three parts: System, Video, and Audio. The
  672.    System part (11172-1) deals with synchronization and multiplexing
  673.    of audio-visual information, while the Video (11172-2) and Audio
  674.    part (11172-3) address the video and the audio compression techniques
  675.    respectively.
  676.  
  677.    You may order it from your national standards body (e.g. ANSI in
  678.    the USA) or buy it from companies like
  679.      OMNICOM
  680.      phone +44 438 742424
  681.      FAX +44 438 740154
  682.  
  683. -------------------------------------------------------------------------------
  684.  
  685. ~Subject: What is MPEG-Audio then ?
  686.  
  687. From: "Harald Popp" <POPP@iis.fhg.de>
  688. From: mortenh@oslonett.no
  689. Date:          Fri, 25 Mar 1994 19:09:06 +0100
  690.  
  691. Q.      What is MPEG?
  692. A.      MPEG is an ISO committee that proposes standards for 
  693.         compression of Audio and Video. MPEG deals with 3 issues: 
  694.         Video, Audio, and System (the combination of the two into one 
  695.         stream). You can find more info on the MPEG committee in other 
  696.         parts of this document. 
  697.         
  698. Q.      I've heard about MPEG Video. So this is the same compression 
  699.         applied to audio?
  700. A.      Definitely no. The eye and the ear... even if they are only a 
  701.         few centimeters apart, works very differently... The ear has 
  702.         a much higher dynamic range and resolution. It can pick out 
  703.         more details but it is "slower" than the eye.
  704.         The MPEG committee chose to recommend 3 compression methods 
  705.         and named them Audio Layer-1, Layer-2, and Layer-3. 
  706.  
  707. Q.      What does it mean exactly?
  708. A.      MPEG-1, IS 11172-3, describes the compression of audio 
  709.         signals using high performance perceptual coding schemes. 
  710.         It specifies a family of three audio coding schemes, 
  711.         simply called Layer-1,-2,-3, with increasing encoder 
  712.         complexity and performance (sound quality per bitrate). 
  713.         The three codecs are compatible in a hierarchical 
  714.         way, i.e. a Layer-N decoder is able to decode bitstream data 
  715.         encoded in Layer-N and all Layers below N (e.g., a Layer-3 
  716.         decoder may accept Layer-1,-2 and -3, whereas a Layer-2 
  717.         decoder may accept only Layer-1 and -2.)
  718.  
  719. Q.      So we have a family of three audio coding schemes. What does 
  720.         the MPEG standard define, exactly?
  721. A.      For each Layer, the standard specifies the bitstream format 
  722.         and the decoder. It does *not* specify the encoder to 
  723.         allow for future improvements, but an informative chapter 
  724.         gives an example for an encoder for each Layer.    
  725.  
  726. Q.      What have the three audio Layers in common?
  727. A.      All Layers use the same basic structure. The coding scheme can 
  728.         be described as "perceptual noise shaping" or "perceptual 
  729.         subband / transform coding". 
  730.         The encoder analyzes the spectral components of the audio 
  731.         signal by calculating a filterbank or transform and applies 
  732.         a psychoacoustic model to estimate the just noticeable 
  733.         noise-level. In its quantization and coding stage, the 
  734.         encoder tries to allocate the available number of data 
  735.         bits in a way to meet both the bitrate and masking 
  736.         requirements.
  737.         The decoder is much less complex. Its only task is to 
  738.         synthesize an audio signal out of the coded spectral 
  739.         components. 
  740.         All Layers use the same analysis filterbank (polyphase with 
  741.         32 subbands). Layer-3 adds a MDCT transform to increase 
  742.         the frequency resolution.
  743.         All Layers use the same "header information" in their 
  744.         bitstream, to support the hierarchical structure of the 
  745.         standard.   
  746.         All Layers use a bitstream structure that contains parts that 
  747.         are more sensitive to biterrors ("header", "bit 
  748.         allocation", "scalefactors", "side information") and parts 
  749.         that are less sensitive ("data of spectral components").  
  750.         All Layers may use 32, 44.1 or 48 kHz sampling frequency.
  751.         All Layers are allowed to work with similar bitrates:
  752.         Layer-1: from 32 kbps to 448 kbps
  753.         Layer-2: from 32 kbps to 384 kbps
  754.         Layer-3: from 32 kbps to 320 kbps
  755.  
  756. Q.      What are the main differences between the three Layers, from a 
  757.         global view?
  758. A.      From Layer-1 to Layer-3,
  759.         complexity increases (mainly true for the encoder),
  760.         overall codec delay increases, and
  761.         performance increases (sound quality per bitrate).
  762.  
  763. Q.      Which Layer should I use for my application?
  764. A.      Good Question. Of course, it depends on all your requirements. 
  765.         But as a first approach, you should consider the available 
  766.         bitrate of your application as the Layers have been 
  767.         designed to support certain areas of bitrates most 
  768.         efficiently, i.e. with a minimum drop of sound quality.   
  769.         Let us look a little closer at the strong domains of each 
  770.         Layer.    
  771.         
  772.         Layer-1: Its ISO target bitrate is 192 kbps per audio 
  773.         channel.
  774.         Layer-1 is a simplified version of Layer-2. It is most useful 
  775.         for bitrates around the "high" bitrates around or above 
  776.         192 kbps. A version of Layer-1 is used as "PASC" with the 
  777.         DCC recorder.
  778.  
  779.         Layer-2: Its ISO target bitrate is 128 kbps per audio 
  780.         channel.
  781.         Layer-2 is identical with MUSICAM. It has been designed as 
  782.         trade-off between sound quality per bitrate and encoder 
  783.         complexity. It is most useful for bitrates around the 
  784.         "medium" bitrates of 128 or even 96 kbps per audio 
  785.         channel. The DAB (EU 147) proponents have decided to use 
  786.         Layer-2 in the future Digital Audio Broadcasting network.   
  787.    
  788.         Layer-3: Its ISO target bitrate is 64 kbps per audio channel. 
  789.         Layer-3 merges the best ideas of MUSICAM and ASPEC. It has 
  790.         been designed for best performance at "low" bitrates 
  791.         around 64 kbps or even below. The Layer-3 format specifies 
  792.         a set of advanced features that all address one goal: to 
  793.         preserve as much sound quality as possible even at rather 
  794.         low bitrates. Today, Layer-3 is already in use in various 
  795.         telecommunication networks (ISDN, satellite links, and so 
  796.         on) and speech announcement systems. 
  797.  
  798. Q.      So how does MPEG audio work?
  799. A.      Well, first you need to know how sound is stored in a 
  800.         computer. Sound is pressure differences in air. When picked up 
  801.         by a microphone and fed through an amplifier this becomes 
  802.         voltage levels. The voltage is sampled by the computer a 
  803.         number of times per second. For CD audio quality you need to 
  804.         sample 44100 times per second and each sample has a resolution 
  805.         of 16 bits. In stereo this gives you 1,4Mbit per second
  806.         and you can probably see the need for compression.
  807.  
  808.         To compress audio MPEG tries to remove the irrelevant parts 
  809.         of the signal and the redundant parts of the signal. Parts of 
  810.         the sound that we do not hear can be thrown away. To do this 
  811.         MPEG Audio uses psychoacoustic principles.
  812.  
  813. Q.      Tell me more about sound quality. How good is MPEG audio 
  814.         compression? And how do you assess that?
  815. A.      Today, there is no alternative to expensive listening tests. 
  816.         During the ISO-MPEG-1 process, 3 international listening tests 
  817.         have been performed, with a lot of trained listeners, 
  818.         supervised by Swedish Radio. They took place in 7.90, 3.91 
  819.         and 11.91. Another international listening test was 
  820.         performed by CCIR, now ITU-R, in 92.      
  821.         All these tests used the "triple stimulus, hidden reference" 
  822.         method and the so-called CCIR impairment scale to assess the 
  823.         audio quality. 
  824.         The listening sequence is "ABC", with A = original, BC = pair 
  825.         of original / coded signal with random sequence, and the 
  826.         listener has to evaluate both B and C with a number 
  827.         between 1.0 and 5.0. The meaning of these values is:
  828.         5.0 = transparent (this should be the original signal)
  829.         4.0 = perceptible, but not annoying (first differences 
  830.               noticable)
  831.         3.0 = slightly annoying   
  832.         2.0 = annoying
  833.         1.0 = very annoying
  834.         With perceptual codecs (like MPEG audio), all traditional 
  835.         parameters (like SNR, THD+N, bandwidth) are especially 
  836.         useless. 
  837.  
  838.         Fraunhofer-IIS (among others) works on objective quality 
  839.         assessment tools, like the NMR meter (Noise-to-Mask-Ratio), 
  840.         too. If you need more informations about NMR, please 
  841.         contact nmr@iis.fhg.de
  842.  
  843. Q.      Now that I know how to assess quality, come on, tell me the 
  844.         results of these tests.
  845. A.      Well, for details you should study one of those AES papers 
  846.         listed below. One main result is that for low bitrates (60 
  847.         or 64 kbps per channel, i.e. a compression ratio of around 
  848.         12:1), Layer-2 scored between 2.1 and 2.6, whereas Layer-3 
  849.         scored between 3.6 and 3.8. 
  850.         This is a significant increase in sound quality, indeed! 
  851.         Furthermore, the selection process for critical sound material 
  852.         showed that it was rather difficult to find worst-case 
  853.         material for Layer-3 whereas it was not so hard to find 
  854.         such items for Layer-2.  
  855.         For medium and high bitrates (120 kbps or more per channel), 
  856.         Layer-2 and Layer-3 scored rather similar, i.e. even 
  857.         trained listeners found it difficult to detect differences 
  858.         between original and reconstructed signal.
  859.  
  860. Q.      So how does MPEG achieve this compression ratio?
  861. A.      Well, with audio you basically have two alternatives. Either 
  862.         you sample less often or you sample with less resolution (less 
  863.         than 16 bit per sample). If you want quality you can't do much 
  864.         with the sample frequency. Humans can hear sounds with 
  865.         frequencies from about 20Hz to 20kHz. According to the Nyquist 
  866.         theorem you must sample at least two times the highest 
  867.         frequency you want to reproduce. Allowing for imperfect 
  868.         filters, a 44,1kHz sampling rate is a fair minimum. So
  869.         you either set out to prove the Nyquist theorem is wrong or 
  870.         go to work on reducing the resolution. The MPEG committee 
  871.         chose the latter.
  872.         Now, the real reason for using 16 bits is to get a good 
  873.         signal-to-noise (s/n) ratio. The noise we're talking 
  874.         about here is quantization noise from the digitizing 
  875.         process. For each bit you add, you get 6dB
  876.         better s/n. (To the ear, 6dBu corresponds to a doubling of 
  877.         the sound level.) CD-audio achieves about 90dB s/n. This 
  878.         matches the dynamic range of the ear fairly well. That is, you 
  879.         will not hear any noise coming from the system itself (well, 
  880.         there is still some people arguing about that, but lets not 
  881.         worry about them for the moment).
  882.         So what happens when you sample to 8 bit resolution? You get 
  883.         a very noticeable noise floor in your recording. You can 
  884.         easily hear this in silent moments in the music or between 
  885.         words or sentences if your recording is a human voice. 
  886.         Waitaminnit. You don't notice any noise in loud passages, 
  887.         right? This is the masking effect and is the key to MPEG Audio 
  888.         coding. Stuff like the masking effect belongs to a science 
  889.         called psycho-acoustics that deals with the way the human 
  890.         brain perceives sound.
  891.         And MPEG uses psychoacoustic principles when it does its 
  892.         thing. 
  893.         
  894. Q.      Explain this masking effect.
  895. A.      OK, say you have a strong tone with a frequency of 1000Hz. 
  896.         You also have a tone nearby of say 1100Hz. This second tone is 
  897.         18 dB lower. You are not going to hear this second tone. It is 
  898.         completely masked by the first 1000Hz tone. As a matter of 
  899.         fact, any relatively weak sounds near a strong sound is 
  900.         masked. If you introduce another tone at 2000Hz also 18 dB 
  901.         below the first 1000Hz tone, you will hear this.
  902.         You will have to turn down the 2000Hz tone to something like 
  903.         45 dB below the 1000Hz tone before it will be masked by the 
  904.         first tone. So the further you get from a sound the less 
  905.         masking effect it has.
  906.         The masking effect means that you can raise the noise floor 
  907.         around a strong sound because the noise will be masked anyway. 
  908.         And raising the noise floor is the same as using less bits 
  909.         and using less bits is the same as compression. Do you get it?
  910.  
  911. Q.      I don't get it.
  912. A.      Well, let me try to explain how the MPEG Audio Layer-2 encoder 
  913.         goes about its thing. It divides the frequency spectrum (20Hz 
  914.         to 20kHz) into 32 subbands. Each subband holds a little slice 
  915.         of the audio spectrum. Say, in the upper region of subband 8, 
  916.         a 6500Hz tone with a level of 60dB is present. OK, the 
  917.         coder calculates the masking effect of this sound and finds 
  918.         that there is a masking threshold for the entire 8th
  919.         subband (all sounds w. a frequency...) 35dB below this tone. 
  920.         The acceptable s/n ratio is thus 60 - 35 = 25 dB. The equals 4 
  921.         bit resolution. In addition there are masking effects on band 
  922.         9-13 and on band 5-7, the effect decreasing with the distance 
  923.         from band 8.
  924.         In a real-life situation you have sounds in most bands and the 
  925.         masking effects are additive. In addition the coder considers 
  926.         the sensitivity of the ear for various frequencies. The ear 
  927.         is a lot less sensitive in the high and low frequencies. Peak 
  928.         sensivity is around 2 - 4kHz, the same region that the human 
  929.         voice occupies. 
  930.         The subbands should match the ear, that is each subband should
  931.         consist of frequencies that have the same psychoacoustic 
  932.         properties. In MPEG Layer 2, each subband is 750Hz wide 
  933.         (with 48 kHz sampling frequency). It would have been better if
  934.         the subbands were narrower in the low frequency range and 
  935.         wider in the high frequency range. That is the trade-off 
  936.         Layer-2 took in favour of a simpler approach.        
  937.         Layer-3 has a much higher frequency resolution (18 times 
  938.         more) - and that is one of the reasons why Layer-3 has a much 
  939.         better low bitrate performance than Layer-2.                
  940.         But there is more to it. I have explained concurrent masking, 
  941.         but the masking effect also occurs before and after a strong 
  942.         sound (pre- and postmasking).
  943.  
  944. Q.      Before?
  945. A.      Yes, if there is a significant (30 - 40dB ) shift in level. 
  946.         The reason is believed to be that the brain needs some 
  947.         processing time. Premasking is only about 2 to 5 ms. The 
  948.         postmasking can be up till 100ms.
  949.         Other bit-reduction techniques involve considering tonal and 
  950.         non-tonal components of the sound. For a stereo signal you 
  951.         may have a lot of redundancy between channels. All MPEG 
  952.         Layers may exploit these stereo effects by using a "joint-
  953.         stereo" mode, with a most flexible approach for Layer-3.      
  954.         Furthermore, only Layer-3 further reduces the redundancy 
  955.         by applying huffmann coding. 
  956.         
  957. Q.      What are the downside?
  958. A.      The coder calculates masking effects by an iterative process 
  959.         until it runs out of time. It is up to the implementor to 
  960.         spend bits in the least obtrusive fashion.
  961.         For Layer 2 and Layer 3, the encoder works on 24 ms of sound 
  962.         (with 1152 sample, and fs = 48 kHz) at a time. For some 
  963.         material, the time-window can be a problem. This is 
  964.         normally in a situation with transients where there are large
  965.         differences in sound level over the 24 ms. The masking is 
  966.         calculated on the strongest sound and the weak parts will 
  967.         drown in quantization noise. This is perceived as a "noise-
  968.         echo" by the ear. Layer 3 addresses this problem 
  969.         specifically by using a smaller analysis window (4 ms), if 
  970.         the encoder encounters an "attack" situation. 
  971.         
  972. Q.      Tell me about the complexity. What are the hardware demands? 
  973.  
  974. A.      Alright. First, we have to separate between decoder and 
  975.         encoder. 
  976.         Remember: the MPEG coding is done asymmetrical, with a much 
  977.         larger workload on the encoder than on the decoder.
  978.         For a stereo decoder, variuos real-time implementations exist 
  979.         for Layer-2 and Layer-3. They are either based on single-DSP 
  980.         solutions or on dedicated MPEG audio decoder chips. So
  981.         you need not worry about decoder complexity.
  982.         For a stereo Layer-2-encoder, various DSP based solutions with 
  983.         one or more DSPs exist (with different quality, also).
  984.         For a stereo Layer-3-encoder achieving ISO reference quality, 
  985.         the current real-time implementations use two DSP32C and 
  986.         two DSP56002. 
  987.         
  988. Q.      How many audio channels?
  989. A.      MPEG-1 allows for two audio channels. These can be either 
  990.         single (mono), dual (two mono channels), stereo or 
  991.         joint stereo (intensity stereo (Layer-2 and Layer-3) or m/s-
  992.         stereo (Layer-3 only)). 
  993.         In normal (l/r) stereo one channel carries the left audio 
  994.         signal and one channel carries the right audio signal. In
  995.         m/s stereo one channel carries the sum signal (l+r) and the 
  996.         other the difference (l-r) signal. In intensity stereo the 
  997.         high frequency part of the signal (above 2kHz) is combined. 
  998.         The stereo image is preserved but only the temporal envelope 
  999.         is transmitted.
  1000.         In addition MPEG allows for pre-emphasis, copyright marks and
  1001.         original/copy marks. MPEG-2 allows for several channels in 
  1002.         the same stream.
  1003.  
  1004. Q.      What about the audio codec delay?
  1005. A.      Well, the standard gives some figures of the theoretical 
  1006.         minimum delay:
  1007.         Layer-1: 19 ms (<50 ms)
  1008.         Layer-2: 35 ms (100 ms)
  1009.         Layer-3: 59 ms (150 ms)
  1010.         The practical values are significantly above that. As they 
  1011.         depend on the implementation, exact figures are hard to 
  1012.         give. So the figures in brackets are just rough thumb 
  1013.         values.    
  1014.         Yes, for some applications, a very short delay is of critical 
  1015.         importance. E.g. in a feedback link, a reporter can only talk 
  1016.         intelligibly if the overall delay is below around 10 ms. 
  1017.         If broadcasters want to apply MPEG audio coding, they have to 
  1018.         use "N-1" switches in the studio to overcome this problem 
  1019.         (or appropriate echo-cancellers) - or they have to forget 
  1020.         about MPEG at all. 
  1021.         But with most applications, these figures are small enough to 
  1022.         present no extra problem. At least, if one can accept a Layer-
  1023.         2 delay, one can most likely also accept the higher Layer-3 
  1024.         delay.
  1025.  
  1026. Q.     OK, I am hooked on! Where can I find more technical 
  1027.        informations about MPEG audio coding, especially about Layer-
  1028.        3?   
  1029. A.     Well, there is a variety of AES papers, e.g.
  1030.  
  1031.        K. Brandenburg, G. Stoll, ...: "The ISO/MPEG-Audio Codec: A 
  1032.        Generic Standard for Coding of High Quality Digital Audio", 
  1033.        92nd AES, Vienna 1992, pp.3336
  1034.    
  1035.        E. Eberlein, H. Popp, ...: "Layer-3, a Flexible Coding 
  1036.        Standard",    94th AES, Berlin 93, pp.3493   
  1037.    
  1038.        K. Brandenburg, G. Zimmer, ...: "Variable Data-Rate Recording 
  1039.        on a PC Using MPEG-Audio Layer-3", 95th AES, New York 93
  1040.    
  1041.        B. Grill, J. Herre,... : "Improved MPEG-2 Audio Multi-Channel 
  1042.        Encoding", 96th AES, Amsterdam 94
  1043.  
  1044.        And for further informations, please contact layer3@iis.fhg.de
  1045.  
  1046. Q.     Where can I get more details about MPEG audio?
  1047. A.     Still more details? No shit. You can get the full ISO spec 
  1048.        from Omnicom. The specs do a fairly good job of obscuring 
  1049.        exactly how these things are supposed to work... Jokes aside, 
  1050.        there are no description of the coder in the specs. The specs 
  1051.        describes in great detail the bitstream and suggests 
  1052.        psychoacoustic models. 
  1053.  
  1054. Originally written by Morten Hjerde <100034,663@compuserve.com>, 
  1055. modified and updated by Harald Popp (layer3@iis.fhg.de).
  1056.  
  1057. Harald Popp
  1058. Audio & Multimedia ("Music is the *BEST*" - F. Zappa)
  1059. Fraunhofer-IIS-A, Weichselgarten 3, D-91058 Erlangen, Germany
  1060. Phone: +49-9131-776-340
  1061. Fax:   +49-9131-776-399
  1062. email: popp@iis.fhg.de
  1063.  
  1064. -------------------------------------------------------------------------------
  1065.  
  1066. ~Subject: What is the Audio Layer 3 then ?
  1067.  
  1068. Informations about MPEG Audio Layer-3
  1069.  
  1070. Version 1.50 - 1. 95
  1071.  
  1072. This text is organized as a kind of Mini-FAQ (Frequently Asked
  1073. Questions). It covers several topics:
  1074.  
  1075. 1. ISO-MPEG Standard
  1076. 2. MPEG Audio Codec Family ("Layer 1, 2, 3")
  1077. 3. Applications
  1078. 4. Products 
  1079. 5. Support by Fraunhofer-IIS
  1080. 6. Shareware Information
  1081.  
  1082. For further comments and questions regarding Layer-3, please contact:
  1083. - layer3@iis.fhg.de
  1084.  
  1085. For further informations about MPEG, you may also like to contact:
  1086. - phade@cs.tu-berlin.de
  1087.  
  1088.  
  1089. 1. ISO-MPEG Standard
  1090.  
  1091. Q: What is MPEG, exactly?
  1092. A: MPEG is the "Moving Picture Experts Group", working under the joint 
  1093.    direction of the International Standards Organization (ISO) and the 
  1094.    International Electro-Technical Commission (IEC). This group works on 
  1095.    standards for the coding of moving pictures and associated audio.
  1096.    
  1097. Q: What is the status of MPEG's work, then? What about MPEG-1, -2, and so 
  1098.    on?
  1099. A: MPEG approaches the growing need for multimedia standards step-by-
  1100.    step. Today, three "phases" are defined:
  1101.  
  1102. MPEG-1:"Coding of Moving Pictures and Associated Audio for 
  1103. Digital Storage Media at up to about 1.5 MBit/s"  
  1104. Status: International Standard IS-11172, completed in 10.92
  1105.  
  1106. MPEG-2:"Generic Coding of Moving Pictures and Associated 
  1107. Audio"
  1108. Status: International Standard IS-13818, completed in 11.94
  1109.  
  1110. MPEG-3: does no longer exist (has been merged into MPEG-2)
  1111.  
  1112. MPEG-4: "Very Low Bitrate Audio-Visual Coding"
  1113. Status: Call for Proposals first deadline 1. 10. 95
  1114.  
  1115. Q: MPEG-1 and MPEG-2 are  ready-for-use. How do the standards look like?
  1116. A: Both standards consist of 4 main parts.
  1117.    The structure is the same for MPEG-1 and MPEG-2.
  1118.    -1: System describes synchronization and multiplexing of video and audio
  1119.    -2: Video describes compression of video signals
  1120.    -3: Audio describes compression of audio signals 
  1121.    -4: Compliance Testing describes procedures for determining the characteristics
  1122.    of coded bitstreams and the decoding process and for testing compliance with
  1123.    the requirements stated in the other parts.
  1124.  
  1125. Q: How do I get the MPEG documents?
  1126. A: You order it from your national standards body.
  1127.    E.g., in Germany, please contact:
  1128.    DIN-Beuth Verlag, Auslandsnormen
  1129.    Mrs. Niehoff, Burggrafenstr. 6, D-10772 Berlin, Germany
  1130.    Phone: +49-30-2601-2757, Fax: +49-30-2601-1231
  1131.  
  1132.  
  1133. 2. MPEG Audio Codec Family ("Layer 1, 2, 3")
  1134.    
  1135. Q: Talking about MPEG audio coding, I heard a lot about "Layer 1, 2 and 3". 
  1136.    What does it mean, exactly?   
  1137. A: MPEG describes the compression of audio signals using high performance 
  1138.    perceptual coding schemes. It specifies a family of three audio coding 
  1139.    schemes, simply called Layer-1,-2,-3, with increasing encoder complexity 
  1140.    and performance (sound quality per bitrate) from 1 to 3. 
  1141.    The three codecs are compatible in a hierarchical way, i.e. a Layer-N 
  1142.    decoder is able to decode bitstream data encoded in Layer-N and all Layers 
  1143.    below N (e.g., a Layer-3 decoder may accept Layer-1,-2 and -3, whereas a 
  1144.    Layer-2 decoder may accept only Layer-1 and -2.)
  1145.  
  1146. Q: So we have a family of three audio coding schemes. What does the MPEG 
  1147.    standard define, exactly?
  1148. A: For each Layer, the standard specifies the bitstream format and the 
  1149.    decoder. To allow for future improvements, it does *not* specify the 
  1150.    encoder, but an informative chapter gives an example for an encoder for 
  1151.    each Layer.    
  1152.  
  1153. Q: What have the three audio Layers in common?
  1154. A: All Layers use the same basic structure. The coding scheme can be 
  1155.    described as "perceptual noise shaping" or "perceptual subband / transform 
  1156.    coding". 
  1157.    The encoder analyzes the spectral components of the audio signal by 
  1158.    calculating a filterbank or transform and applies a psychoacoustic model 
  1159.    to estimate the just noticeable noise-level. In its quantization and coding 
  1160.    stage, the encoder tries to allocate the available number of data bits in a 
  1161.    way to meet both the bitrate and masking requirements.
  1162.    The decoder is much less complex. Its only task is to synthesize an audio 
  1163.    signal out of the coded spectral components.
  1164.    All Layers use the same analysis filterbank (polyphase with 32 subbands). 
  1165.    Layer-3 adds a MDCT transform to increase the frequency resolution.
  1166.    All Layers use the same "header information" in their bitstream, to support 
  1167.    the hierarchical structure of the standard.
  1168.    All Layers have a similar sensitivity to biterrors. They use a bitstream 
  1169.    structure that contains parts that are more sensitive to biterrors ("header", 
  1170.    "bit allocation", "scalefactors", "side information") and parts that 
  1171.    are less sensitive ("data of spectral components").
  1172.    All Layers support the insertion of programm-associated information 
  1173.    ("ancillary data") into their audio data bitstream.
  1174.    All Layers may use 32, 44.1 or 48 kHz sampling frequency.
  1175.    All Layers are allowed to work with similar bitrates:
  1176.    Layer-1: from 32 kbps to 448 kbps
  1177.    Layer-2: from 32 kbps to 384 kbps
  1178.    Layer-3: from 32 kbps to 320 kbps
  1179.    The last two statements refer to MPEG-1; with MPEG-2, there is an 
  1180.    extension for the sampling frequencies and bitrates (see below).
  1181.  
  1182. Q: What are the main differences between the three Layers, from a global 
  1183.    view?
  1184. A: From Layer-1 to Layer-3,
  1185.    complexity increases (mainly true for the encoder),
  1186.    overall codec delay increases, and
  1187.    performance increases (sound quality per bitrate).
  1188.  
  1189. Q: What are the main differences between MPEG-1 and MPEG-2 in the audio 
  1190.    part?
  1191. A: MPEG-1 and MPEG-2 use the same family of audio codecs, Layer-1, -2 
  1192.    and -3. The new audio features of MPEG-2 are:
  1193.    "low sample rate extension" to address very low bitrate applications 
  1194.    with limited bandwidth requirements (the new sampling frequencies 
  1195.    are 16, 22.05 or 24 kHz, the bitrates extend down to 8 kbps),
  1196.    "multichannel extension" to address surround sound applications 
  1197.    with up to 5 main audio channels (left, center, right, left surround, 
  1198.    right surround) and optionally 1 extra "low frequency enhancement 
  1199.    (LFE)" channel for subwoofer signals; in addition, a "multilingual 
  1200.    extension" allows the inclusion of up to 7 more audio channels.
  1201.  
  1202. Q: A lot of new stuff! Is this all compatible to each other?
  1203. A: Well, more or less, yes - with the execption of the low sample rate 
  1204.    extension. Obviously, a pure MPEG-1 decoder is not able to handle the 
  1205.    new "half" sample rates.
  1206.  
  1207. Q: You mean: compatible!? With all these extra audio channels? Please 
  1208.    explain!
  1209. A: Compatibility has been a major topic during the MPEG-2 definition phase. 
  1210.    The main idea is to use the same basic bitstream format as defined in 
  1211.    MPEG-1, with the main data field carrying two audio signals (called L0 
  1212.    and R0) as before, and the ancillary data field carrying the multichannel 
  1213.    extension information. Without going further into details, three terms can 
  1214.    be explained here:
  1215.    "forwards compatible": the MPEG-2 decoder has to accept any 
  1216.    MPEG-1 audio bitstream (that represents one or two audio channels)
  1217.    "backwards compatible": the MPEG-1 decoder should be able to 
  1218.    decode the audio signals in the main data field (L0 and R0) of the 
  1219.    MPEG-2 bitstream
  1220.    "Matrixing" may be used to get the surround information into L0 and 
  1221.    R0:
  1222.    L0 = left signal + a * center signal + b * left surround signal
  1223.    R0 = right signal + a * center signal + b * right surround signal 
  1224.    Therefore, a MPEG-1 decoder can reproduce a comprehensive downmix of 
  1225.    the full 5-channel information. A MPEG-2 decoder uses the multichannel 
  1226.    extension information (3 more audio signals) to reconstruct the five 
  1227.    surround channels.
  1228.  
  1229. Q: I heard something about a new NBC mode for MPEG-2 audio? What does 
  1230.    it mean?
  1231. A: "NBC" stands for "non-backwards compatible". During the development 
  1232.    of the backwards compatible MPEG-2 standard, the experts encountered 
  1233.    some trouble with the compatibility matrix. The introduced quantisation 
  1234.    noise may become audible after dematrixing. Although some clever 
  1235.    strategies have been devised to overcome this problem, the question 
  1236.    remained how much better a non-compatible multichannel codec might 
  1237.    perform.
  1238.    So ISO-MPEG decided to address that issue in a "NBC" working group - 
  1239.    among the proponents are AT&T, Dolby, Fraunhofer, IRT, Philips, and 
  1240.    Sony. Their work will lead to an addendum to the MPEG-2 standard 
  1241.    (13818-8).
  1242.  
  1243. Q: O.K., that should do for a first overview. Are there some papers for a more 
  1244.    detailed information?
  1245. A: Sure! You'll find more technical informations about MPEG audio coding 
  1246.    in a variety of AES papers (AES = Audio Engineering Society). The AES 
  1247.    organizes two conventions per year, and perceptual audio coding has been 
  1248.    a topic since the middle of the 80s. Some interesting papers might be:
  1249.  
  1250. K. Brandenburg, G. Stoll, et al.: "The ISO/MPEG-Audio Codec: A 
  1251. Generic Standard for Coding of High Quality Digital Audio", 92nd 
  1252. AES, Vienna Mar. 92, pp. 3336; revised version ("ISO-MPEG-1 
  1253. Audio: A Generic Standard...") published in the Journal of AES, 
  1254. Vol.42, No. 10, Oct. 94
  1255.  
  1256. S. Church, B. Grill, et al.: "ISDN and ISO/MPEG Layer-3 Audio 
  1257. Coding: Powerful New tools for Broadcast and Audio Production", 
  1258. 95th AES, New York Oct. 93, pp. 3743
  1259.  
  1260. E. Eberlein, H. Popp, et al.: "Layer-3, a Flexible Coding Standard", 
  1261. 94th AES, Berlin Mar. 93, pp. 3493   
  1262.    
  1263. B. Grill, J. Herre, et al.: "Improved MPEG-2 Audio Multi-Channel 
  1264. Encoding", 96th AES, Amsterdam Feb. 94, pp. 3865
  1265.  
  1266. J. Herre, K. Brandenburg, et al.: "Second Generation ISO/MPEG 
  1267. Audio Layer-3 Coding", 98th AES, Paris Feb. 95
  1268.  
  1269. F.-O. Witte, M. Dietz, et al.: "'Single Chip Implementation of an 
  1270. ISO/MPEG Layer-3 Decoder", 96th AES, Amsterdam Feb. 94, pp. 
  1271. 3805
  1272.  
  1273. For ordering informations, contact:
  1274.  
  1275. AES
  1276. 60 East 42nd Street, Suite 2520
  1277. New York, NY 10165-2520, USA
  1278. phone: (212) 661-8528, fax: (212) 682-0477    
  1279.  
  1280. Another interesting publication: the "Proceedings of the Sixth Tirrenia 
  1281. International Workshop on Digital Communications", Tirrenia Sep. 93, 
  1282. Elsevier Science B.V. Amsterdam 94 (ISBN 0 444 81580 5).
  1283.  
  1284. An excellent tutorial about MPEG-2 has recently been published in a 
  1285. German technical journal (Fernseh- und Kino-Technik); part 4, by E. F. 
  1286. Schroeder and J. Spille, talks about the audio part (7/8 94, p. 364 ff).
  1287.  
  1288. And for further informations, please feel free to contact layer3@iis.fhg.de.
  1289.  
  1290.  
  1291. 3. Applications
  1292.  
  1293. Q: O.K., let us concentrate on one or two audio channels. Which Layer shall I 
  1294.    use for my application?
  1295. A: Good Question. Of course, it depends on all your requirements. But as a 
  1296.    first approach, you should consider the available bitrate of your 
  1297.    application as the Layers have been designed to support certain areas of 
  1298.    bitrates most effectively. Roughly, today you can achieve a data reduction 
  1299.    of around
  1300.    1:4    with Layer-1 (or 192 kbps per audio channel),
  1301.    1:6..8    with Layer-2 (or 128..96 kbps per audio channel), and 
  1302.    1:10..12    with Layer-3, (or 64..56 kbps per audio channel),
  1303.    and still the reconstructed audio signal will maintain a "CD-like" sound 
  1304.    quality. This may be used as a first "thumb rule" - let's talk about details 
  1305.    later on.
  1306.  
  1307. Q: Why does the performance increase with the number of the Layer? Why 
  1308.    does the standard define a family of audio codecs instead of one single 
  1309.    powerful algorithm?
  1310. A: Well, the MPEG standard has forged together two main coding schemes 
  1311.    that offered advantages either in complexity (MUSICAM) or in 
  1312.    performance (ASPEC).
  1313.    Layer-2 is identical with the MUSICAM format. It has been designed as a 
  1314.    trade-off between sound quality per bitrate and encoder complexity. So it is 
  1315.    most useful for the "medium" range of bitrates (96..128 kbps per channel).
  1316.    For higher bitrates, even a simplified version, the Layer-1, performs well 
  1317.    enough. Layer-1 has originally been developed for a target bitrate of 192 
  1318.    kbps per channel. It is used as "PASC" within the DCC recorder.
  1319.    For lower bitrates (64 kbps per channel or even less), the Layer-2 format 
  1320.    suffers from its build-in limitations, and with decreasing bitrate, artefacts 
  1321.    become audible more and more. Here is the strong domain of the most 
  1322.    powerful MPEG audio format, Layer-3. It specifies a set of unique features 
  1323.    that all address one goal: to preserve as much sound quality as possible 
  1324.    even at very low bitrates.
  1325.  
  1326. Q: Wait a second! I understand that Layer-3 has been an important asset to 
  1327.    the MPEG-1 standard, to address the high-quality low bitrate 
  1328.    applications. With the advent of  the "low sample rate extension (LSF)" in 
  1329.    MPEG-2, is it still necessary to rely on Layer-3 to achieve a high-quality 
  1330.    sound at low bitrates?
  1331. A: Yes, for sure! Please, don't mix up MPEG-1 and MPEG-2 LSF. MPEG-2 
  1332.    LSF is useful only for applications with limited bandwidth (11.25 kHz, at 
  1333.    best). For applications with full bandwidth, MPEG-1 Layer-3 at 64 or 56 
  1334.    kbps per channel achieves the best sound quality of all ISO codecs.
  1335.    For applications with limited bandwidth, MPEG-2 LSF Layer-3 provides 
  1336.    an excellent sound quality at 56 kbps for monophonic speech signals and 
  1337.    still a good sound quality at only 64 kbps total bitrate for stereo music 
  1338.    signals (with around 10 kHz bandwidth). The latest MPEG ISO listening 
  1339.    test (in September 94 at NTT Japan, doc. MPEG 94/437) proved the 
  1340.    superior performance of Layer-3 in MPEG-1 and MPEG-2 LSF.
  1341.  
  1342. Q: Tell me more about sound quality. How do you assess that?
  1343. A: Today, there is no alternative to expensive listening tests. During the ISO-
  1344.    MPEG process, a number of international listening tests have been 
  1345.    performed, with a lot of trained listeners. All these tests used the "triple 
  1346.    stimulus, hidden reference" method and the "CCIR impairment scale" to 
  1347.    assess the sound quality.
  1348.    The listening sequence is "ABC", with A = original, BC = pair of original 
  1349.    / coded signal with random sequence, and the listener has to evaluate both 
  1350.    B and C with a number between 1.0 and 5.0. The meaning of these values 
  1351.    is:
  1352.    5.0 = transparent (this should be the original signal)
  1353.    4.0 = perceptible, but not annoying (first differences noticable)  
  1354.    3.0 = slightly annoying   
  1355.    2.0 = annoying
  1356.    1.0 = very annoying
  1357.  
  1358. Q: Is there really no alternative to listening tests?
  1359. A: No, there is not. With perceptual codecs, all traditional "quality" 
  1360.    parameters (like SNR, THD+N, bandwidth) are rather useless, as any 
  1361.    codec may introduce noise and distortions as long as it does not affect the 
  1362.    perceived sound quality. So, listening tests are necessary, and, if carefully 
  1363.    prepared and performed, lead to rather reliable results.
  1364.    Nevertheless, Fraunhofer-IIS works on objective sound quality assessment 
  1365.    tools, too. There is already a first product available, the NMR meter, a 
  1366.    real-time DSP-based measurement tool that nicely supports the analysis of 
  1367.    perceptual audio codecs. If you need more informations about the Noise-to-
  1368.    Mask-Ratio (NMR) technology, feel free to contact nmr@iis.fhg.de.
  1369.  
  1370. Q: O.K., back to these listening tests. Come on, tell me some results.
  1371. A: Well, for details you should study one of those AES papers or MPEG 
  1372.    documents listed above. The main result is that for low bitrates (64 kbps 
  1373.    per channel or below), Layer-3 always scored significantly better than 
  1374.    Layer-2. Another important conclusion is the draft recommendation of the 
  1375.    task group TG 10/2 within the ITU-R. It recommends the use of low bit-
  1376.    rate audio coding schemes for digital sound-broadcasting applications 
  1377.  
  1378. Archive-name: mpeg-faq/part2
  1379. Last-modified: 1995/06/07
  1380. Version: v 4.0 95/06/07
  1381. Posting-Frequency: bimonthly
  1382.  
  1383.    (doc. BS.1115).
  1384.  
  1385. Q: Very interesting! Tell me more about this recommendation!
  1386. A: The task group TG 10/2 concluded its work in October 93. The draft 
  1387.    recommendation defines three fields of broadcast applications:
  1388.    - distribution and contribution links (20 kHz bandwidth, no audible 
  1389.    impairments with up to 5 cascaded codecs)
  1390.    Recommendation: Layer-2 with 180 kbps per channel
  1391.    - emission (20 kHz bandwidth)
  1392.    Recommendation: Layer-2 with 128 kbps per channel
  1393.    - commentary links (15 kHz bandwidth)
  1394.    Recommendation: Layer-3 with 60 kbps for monophonic and 120 kbps
  1395.    for stereophonic signals
  1396.  
  1397. Q: I see. Medium bitrates - Layer-2, low bitrates - Layer-3. What's about a 
  1398.    bitrate of 96 kbps per channel that seems to be "somewhere in between" 
  1399.    Layer-2 and Layer-3 domains?
  1400. A: Interesting question. In fact, a total bitrate of 192 kbps for stereo music is 
  1401.    useful for real applications, e.g. emission via satellite channels. The ITU-R 
  1402.    required that emission codecs should score at least 4.0 on the CCIR 
  1403.    impairment scale, even for the most critical material. At 128 kbps per 
  1404.    channel, Dolby's AC-2, Layer-2 and Layer-3 fulfilled this requirement. 
  1405.    Finally, Layer-2 got the recommendation mainly because of its 
  1406.    "commonality with the distribution and contribution application".
  1407.    Further tests for emission were performed at 192 kbps joint-stereo coding. 
  1408.    Layer-3 clearly met the requirements, Layer-2 fulfilled them only 
  1409.    marginally, with doubts remaining during further tests with cascaded 
  1410.    codecs in 1993. In the end, the task group decided to pronounce no 
  1411.    recommendation for emission at 192 kbps.
  1412.  
  1413. Q: Someone told me that in the ITU-R tests, there was some trouble with 
  1414.    Layer-3, specifically on male voice in the German language. Still, Layer-3 
  1415.    got the recommendation for "commentary links". Can you explain that?
  1416. A: Yes. For commentary links, the quality requirements for speech were to be 
  1417.    equivalent to 14-bit linear PCM, and for music, some perceptible 
  1418.    impairments were to be tolerated. In the test in 1992, Layer-3 was by far 
  1419.    the only codec that fulfilled these requirements (e.g. overall monophonic, 
  1420.    Layer-3 scored 3.6 in contrast to Layer-2 at 2.05 - and for male German 
  1421.    speech, Layer-3 scored 4.4 in contrast to Layer-2 at 2.4).
  1422.    Further tests were performed in 1993 using headphones. They showed that 
  1423.    MPEG-1 Layer-3 with monophonic speech (the test item is German male
  1424.    voice) at 60 kbps did not fully meet the quality requirements. The ITU 
  1425.    decided to recommend Layer-3 and to include a temporary footnote that 
  1426.    will be removed as soon as an improved Layer-3 codec fulfills the 
  1427.    requirements completely, i.e. even with that well-known critical male 
  1428.    German speech item (for many other speech items, Layer-3 has no trouble 
  1429.    at all).
  1430.  
  1431. Q: O.K., a Layer-2 codec at low bitrates may sound poor today, but couldn't 
  1432.    that be improved in the future? I guess you just told me before that the 
  1433.    encoder is not fixed in the standard.
  1434. A: Good thinking! As the sound quality mainly depends on the encoder 
  1435.    implementation, it is true that there is no such thing as a "Layer-N"- 
  1436.    quality. So we definitely only know the performance of the reference 
  1437.    codecs used during the international tests. Who knows what will happen in 
  1438.    the future? What we do know now, is:
  1439.    Today, in MPEG-1 and MPEG-2, Layer-3 provides the best sound quality 
  1440.    at low bitrates, by far better than Layer-2.
  1441.    Tomorrow, both Layers may improve. Layer-2 has been designed as a 
  1442.    trade-off between quality and complexity, so the bitstream format allows 
  1443.    only limited innovations. In contrast, even the current reference Layer-3-
  1444.    codec does not exploit all of the powerful mechanisms inside the Layer-3 
  1445.    bitstream format.  
  1446.  
  1447. Q: What other topics do I have to keep in mind? Tell me about the complexity 
  1448.    of Layer-3.
  1449. A: O.K. First, we have to separate between decoder and encoder, as the 
  1450.    workload is distributed asymmetrically between them, i.e. the encoder 
  1451.    needs much more computation power than the decoder.
  1452.    For a stereo Layer-3-decoder, you may either use a DSP (e.g. one 
  1453.    DSP56002 from Motorola) or an "ASIC", like the masc-programmed DSP 
  1454.    chip MAS 3503 C from Intermetall, ITT. Some rough requirements are:
  1455.    computation power around 12 MIPs
  1456.    Data ROM 2.5 Kwords
  1457.    Data RAM 4.5 Kwords
  1458.    Programm ROM 2 to 4 Kwords
  1459.    word length at least 20 bit
  1460.    Intermetall (ITT) estimated an overhead of around 30 % chip area for 
  1461.    adding the necessary Layer-3 modules to a Layer-2-decoder. So you need 
  1462.    not worry too much about decoder complexity.
  1463.    For a stereo Layer-3-encoder achieving reference quality, our current real-
  1464.    time implementations use two DSP32C (AT&T) and one     DSP56002. With 
  1465.    the advent of the 21060 (Analog Devices), even a single-chip stereo 
  1466.    encoder comes into view.
  1467.  
  1468. Q: Quality, complexity - what about the codec delay?
  1469. A: Well, the standard gives some figures of the theoretical minimum delay:
  1470.    Layer-1:     19 ms (<50 ms)
  1471.    Layer-2:     35 ms (100 ms)
  1472.    Layer-3:     59 ms (150 ms)
  1473.    The practical values are significantly above that. As they depend on the 
  1474.    implementation, exact figures are hard to give. So the figures in brackets 
  1475.    are just rough thumb values - real codecs may show significant higher 
  1476.    values.
  1477.  
  1478. Q: For some applications, a very short delay is of critical importance: e.g. in a 
  1479.    feedback link, a reporter can only talk intelligibly if the overall delay is 
  1480.    below around 10 ms. Here, do I have to forget about MPEG audio at all?
  1481. A: Not necessarily. In this application, broadcasters may use "N-1" switches 
  1482.    in the studio to overcome this problem - or they may use equipment with 
  1483.    appropriate echo-cancellers. 
  1484.    But with many applications, these delay figures are small enough to 
  1485.    present no extra problem. At least, if one can accept a Layer-2 delay, one 
  1486.    can most likely also accept the higher Layer-3 delay.
  1487.  
  1488. Q: Someone told me that, with Layer-3, the codec delay would depend on the 
  1489.    actual audio signal, varying over the time. Is this really true? 
  1490. A: No. The codec delay does not depend on the audio signal.With all Layers, 
  1491.    the delay depends on the actual implementation used in a specific codec, so 
  1492.    different codecs may have different delays. Furthermore, the delay depends 
  1493.    on the actual sample rate and bitrate of your codec.   
  1494.    
  1495. Q: All in all, you sound as if anybody should use Layer-3 for low bitrates. 
  1496.    Why on earth do some vendors still offer only Layer-2 equipment for these 
  1497.    applications?
  1498. A: Well, maybe because they started to design and develop their systems 
  1499.    rather early, e.g. in 1990. As Layer-2 is identical with MUSICAM, it has 
  1500.    been available since summer of 1990, at latest. In that year, Layer-3 
  1501.    development started and could be successfully finished at the end of 1991. 
  1502.    So, for a certain time, vendors could only exploit the already existing part 
  1503.    of the new MPEG standard.   
  1504.    Now the situation has changed. All Layers are available, the standard is 
  1505.    completed, and new systems may capitalize on the full features of MPEG 
  1506.    audio.
  1507.  
  1508. 4. Products
  1509.  
  1510. Q: What are the main fields of application for Layer-3?
  1511. A: Simply put: all applications that need high-quality sound at very low 
  1512.    bitrates to store or transmit music signals. Some examples are:
  1513.    - high-quality music links via ISDN phone lines (basic rate)
  1514.    - sound broadcasting via low bitrate satellite channels
  1515.    - music distribution in computer networks with low demands for channel 
  1516.    bandwidth and memory capacity
  1517.    - music memories for solid state recorders based on ROM chips
  1518.         
  1519. Q: What kind of Layer-3 products are already available?
  1520. A: An increasing number of applications benefit from the advanced features 
  1521.    of MPEG audio Layer-3. Here is a list of companies that currently sell 
  1522.    Layer-3 products. For further informations, please contact these companies 
  1523.    directly.
  1524.  
  1525. Layer-3 Codecs for Telecommunication:
  1526. -    AETA, 361 Avenue du Gal de Gaulle (*)
  1527.     F-92140 Clamart, France
  1528.     Fax: +33-1-4136-1213 (Mr. Fric)
  1529. (*)    products announced for 1995
  1530. -         Dialog 4 System Engineering GmbH, Monreposstr. 57
  1531.          D-71634 Ludwigsburg, Germany
  1532.          Fax: +49-7141-22667 (Mr. Burkhardtsmaier)
  1533. -    PKI Philips Kommunikations Industrie, Thurn-und-Taxis-Str. 14
  1534.          D-90411 Nuernberg, Germany
  1535.          Fax: +49-911-526-3795 (Mr. Konrad)
  1536. -    Telos Systems, 2101 Superior Avenue
  1537.          Cleveland, OH 44114, USA
  1538.          Fax: +1-216-241-4103 (Mr. Church)
  1539.  
  1540. Speech Announcement Systems:
  1541. -    Meister Electronic GmbH, Koelner Str. 37
  1542.          D-51149 Koeln, Germany
  1543.     Fax: +49-2203-1701-30 (Mr. Seifert)
  1544.  
  1545. PC Cards (Hardware and/or Software):
  1546. -         Dialog 4 System Engineering GmbH, Monreposstr. 57
  1547.          D-71634 Ludwigsburg, Germany
  1548.          Fax: +49-7141-22667 (Mr. Burkhardtsmaier)
  1549. -    Proton Data, Marrensdamm 12 b
  1550.     D-24944 Flensburg, Germany
  1551.     Fax: +49-461-38169 (Mr. Nissen)
  1552.  
  1553. Layer-3-Decoder-Chips:
  1554. -    ITT Intermetall GmbH, Hans-Bunte-Str. 19
  1555.          D-79108 Freiburg, Germany
  1556.          Fax: +49-761-517-2395 (Mrs. Mayer)
  1557.  
  1558. Layer-3 Shareware Encoder/Decoder:
  1559. -    Mailbox System Nuernberg (MSN), Innerer Kleinreuther Weg 21
  1560.      D-90408 Nuernberg, Germany
  1561.     Fax: +49-911-9933661 (Mr. Hanft) 
  1562.     Shareware (version 1.00) is available for:
  1563.     -    IBM-PCs or Compatibles with MS-DOS:
  1564.         L3ENC.EXE and L3DEC.EXE should work on practically 
  1565.         any PC with 386 type CPU or better. For the encoder, a 
  1566.         486DX33 or better is recommended.
  1567.         On a 486DX2/66 the current shareware decoder performs in 
  1568.         1:3 real-time, and the shareware encoder in 1:14 real-time 
  1569.         (with stereo signals sampled with 44.1 kHz).
  1570.     -    Sun workstations:
  1571.         On a SPARC station 10, the decoder works in real time, the 
  1572.         encoder performs in 1:5 real-time.
  1573.         For more information, refer to chapter 6.
  1574.  
  1575. 5. Support by Fraunhofer-IIS
  1576.  
  1577. Q: I understand that Fraunhofer-IIS has been the main developer of MPEG 
  1578.    audio Layer-3. What can they do for me?
  1579. A: The Fraunhofer-IIS focusses on applied research. Its engineers have 
  1580.    profound expertise in real-time implementations of signal-processing 
  1581.    algorithms, especially of Layer-3. The IIS may support a specific Layer-3 
  1582.    application in various ways:
  1583.    - detailed informations
  1584.    - technical consulting
  1585.    - advanced C sources for encoder and decoder
  1586.    - training-on-the-job
  1587.    - research and development projects on contract basis.
  1588.    For more informations, feel free to contact:
  1589.    - Fraunhofer-IIS, Weichselgarten 3
  1590.      D-91058 Erlangen, Germany
  1591.      Fax: +49-9131-776-399 (Mr. Popp)
  1592.  
  1593. Q: What are the latest audio demonstrations disclosed by Fraunhofer-IIS?
  1594. A: At the Tonmeistertagung 11.94 in Karlsruhe, Germany, the IIS 
  1595.    demonstrated:
  1596.    - real-time Layer-3 decoder software (mono, 32 kHz fs) including sound 
  1597.    output on ProAudioSpectrum running on a 486DX2/66
  1598.    - playback of Layer-3 stereo files from a CD-ROM that has been produced 
  1599.    by Intermetall and contains Layer-3 data of up to 15 h of stereo music 
  1600.    (among others, all Beethoven symphonies); the decoder is a small board 
  1601.    that is connected to the parallel printer port. It mainly carries 3 chips: a 
  1602.    PLD as data interface, the MAS 3503 C stereo decoder chip, and the 
  1603.    ASCO Digital-Analog-Converter. The board has two cinch adapters that 
  1604.    allow a very simple connection to the usual stereo amplifier.
  1605.    - music-from-silicon demonstration by using the standard 1 Mbyte 
  1606.    EPROMs to store 1.5 minutes of CD-like quality stereo music
  1607.    - music link (with around 6 kHz bandwidth) via V.34 modem at 28.8 kbps 
  1608.    and one analog phone line
  1609.  
  1610. 6. Shareware Information
  1611.  
  1612. The Layer 3 Shareware is copyright Fraunhofer - IIS 1994 1995.
  1613. The shareware packages are available:
  1614. - via anonymous ftp from
  1615.  
  1616. URL=ftp://fhginfo.fhg.de/pub/layer3/
  1617.     [153.96.1.4]
  1618. You may download our Layer-3 audio software package from the directory 
  1619. /pub/layer3. You will find the following files:
  1620.  
  1621.      For IBM PCs:
  1622.        l3v100.txt         a short description of the files found in l3v100.zip
  1623.        l3v100.zip         encoder, decoder, documentation and a sample bitstream
  1624.       l3v100n.txt    a short description of the files found in l3v100n.zip
  1625.        l3v100n.zip    encoder, decoder and documentation (no bitstream)  
  1626.        bstr100.l3         a sample bitstream encoded with l3enc version 1.00
  1627.  
  1628.      For SUN workstations: 
  1629.        l3v100.sun.txt         short description of the files found in l3v100.sun.zip
  1630.        l3v100.sun.tar.gz      encoder, decoder, documentation and a sample 
  1631.             bitstream
  1632.        l3v100n.sun.txt       short description of the files found in     
  1633.             l3v100n.sun.zip
  1634.        l3v100n.sun.tar.gz     encoder, decoder and documentation (no bitstream)  
  1635.        bstr100.l3           sample bitstream encoded with version 1.00 of the 
  1636.             encoder
  1637.  
  1638. -  via direct modem download (up to 14.400 bps)
  1639. Modem telephone number  : +49 911 9933662    Name: FHG
  1640. Packet switching network: (0) 262 45 9110 10290    Name: FHG
  1641. (For the telephone number, replace "+" with your appropriate international 
  1642. dial prefix, e.g. "011" for the USA.)
  1643. Follow the menus as desired.
  1644.  
  1645. - via shipment of diskettes (only including registration)
  1646. You may order a diskette directly from:
  1647.     Mailbox System Nuernberg (MSN)
  1648.      Hanft & Hartmann
  1649.      Innerer Kleinreuther Weg 21
  1650.      D-90408 Nuernberg, Germany
  1651.  
  1652. Please note: MSN will only ship a diskette if they get paid for the 
  1653. registration fee before. The registration fee is 85 Deutsche Mark (about 50 
  1654. US$) (plus sales tax, if applicable) for one copy of the package. The 
  1655. preferred method of payment is via credit card. Currently, MSN accepts 
  1656. VISA, Master Card / Eurocard / Access credit cards. For details see the file 
  1657. REGISTER.TXT found in the shareware package.
  1658.  
  1659.  You may reach MSN also via Internet: msn@iis.fhg.de
  1660.      or via Fax: +49 911 9933661
  1661.      or via BBS: +49 911 9933662        Name: FHG
  1662.      or via X25: 0262 45 9110 10290         Name: FHG
  1663.     (e.g. in USA, please replace "+" with "011"
  1664.  
  1665. -    via email
  1666. You may get our shareware also by a direct request to msn@iis.fhg.de. In 
  1667. this case, the shareware is split into about 30 small uuencoded parts...
  1668.  
  1669. END-OF-INFO.TXT 1.50 E
  1670.  
  1671. Harald Popp
  1672. Audio & Multimedia ("Music is the *BEST*" - F. Zappa)
  1673. Fraunhofer-IIS-A, Weichselgarten 3, D-91058 Erlangen, Germany
  1674. Phone: +49-9131-776-340
  1675. Fax:   +49-9131-776-399
  1676. email: popp@iis.fhg.de
  1677. P.S.: Look out for planetoid #3834!
  1678.  
  1679. -------------------------------------------------------------------------------
  1680.  
  1681. ~Subject: What is MPEG-1+ ?
  1682.  
  1683. This was a little mail-talk between harti@shb.contrib.de (Stefan Hartmann)
  1684. and hgordon@system.xingtech.com.
  1685.  
  1686. Q: What is MPEG-1+ ?
  1687.  
  1688.    It's MPEG-1 at MPEG-2 (CCIR) resolution. It will maybe be used
  1689.    fir TV-on-top-boxes for broadcasting or video-on-demand projects
  1690.    to enhance the picture quality.
  1691.  
  1692. Q: I see. Is this a new standard ?
  1693.  
  1694.    No. MPEG-1 allows the definition of frames until 4000x4000 pixel, but
  1695.    that is usally not used.
  1696.  
  1697. Q; So what's different ?
  1698.  
  1699.    I understand that the effective resolution is approximately 550 x 480.
  1700.    Typical datarates are 3.5Mbps - 5.5Mbps (sports programming and perhaps
  1701.    movies are higher).
  1702.  
  1703. Q: Is the video quality lower than with real MPEG-2 movies ?
  1704.  
  1705.    The quality is better than cable TV, and in my area, we don't have cable.
  1706.    They de-interlace and compress the full frames.  My understanding is that
  1707.    this is about 5%-10% less efficient than taking advantage of MPEG-2
  1708.    interfield motion vectors.
  1709.  
  1710. Q: If the fields are deinterlaced, do you see the interlace artifacts, so that
  1711.    a moving object in one field is already more into one direction, than in the  
  1712.    other field ?
  1713.  
  1714.    Probably the TV-receiver also gives it out interlaced again to the TV- 
  1715.    set, so this does not produce this interlace artifact like on
  1716.    PCs with live video windows displaing both fields....
  1717.  
  1718. Q: Can you record this anyhow on a VCR ? Does the SAT-Receiver have a
  1719.    video- output, so you can record movies to tape ?
  1720.  
  1721.    You should be able to record to tape, though they may have some record
  1722.    blocking hardware which has to be overcome with video stabilizing
  1723.    hardware.
  1724.  
  1725. Q: What kind of realtime encoders do they use at the broadcast station ?
  1726.  
  1727.    CLI (Compression Labs) is the manufacturer, using C-Cube chipsets (10
  1728.    CL-4000's per MPEG-1+ encoder).
  1729.  
  1730. Q: Is there any written info about this MPEG-1 Plus technology available on
  1731.    the net ?
  1732.  
  1733.    Not that I'm aware. Maybe C-Cube has a Web site.
  1734.  
  1735.  
  1736. [So it's up to you, dear reader, to find more and to tell me where it is ;o) ]
  1737.  
  1738. Frank Gadegast, phade@cs.tu-berlin.de
  1739.  
  1740. -------------------------------------------------------------------------------
  1741.  
  1742. ~Subject: What is MPEG-2?
  1743.  
  1744. MPEG-2 FAQ
  1745. version 3.7 (May 11, 1995)
  1746. by Chad Fogg (cfogg@chromatic.com)
  1747.  
  1748. The MPEG (Moving Pictures Experts Group) committee began its life in
  1749. late 1988 by the hand of Leonardo Chairiglione and Hiroshi Yasuda with
  1750. the immediate goal of standardizing video and audio for compact discs.
  1751. Over the next few years, participation amassed from international
  1752. technical experts in the areas of Video, Audio, and Systems, reaching
  1753. over 200 participants by 1992.   
  1754.  
  1755. By the end of the third year (1990), a syntax emerged, which when
  1756. applied to code SIF video and compact disc audio samples  rates at a
  1757. combined coded bitrate of 1.5 Mbit/sec, approximated the perceptual
  1758. quality of consumer video tape (VHS).  After demonstrations proved that
  1759. the syntax was generic enough to be applied to bit rates and sample
  1760. rates far higher than the original primary target application, a second
  1761. phase (MPEG-2) was initiated within the committee to define a syntax
  1762. for efficient representation of broadcast video.  Efficient
  1763. representation of interlaced (broadcast) video signals was more
  1764. challenging than the progressive (non-interlaced) signals coded by
  1765. MPEG-1. Similarly, MPEG-1 audio was capable of only directly
  1766. representing two channels of sound. MPEG-2 would introduce a scheme to
  1767. decorrelate mutlichannel discrete surround sound audio.
  1768.  
  1769. Need for a third phase (MPEG-3) was anticipated in 1991 for High
  1770. Definition Television, although it was later discovered by late 1992
  1771. and 1993 that the MPEG-2 syntax simply scaled with the bit rate,
  1772. obviating the third phase.  MPEG-4 was launched in late 1992 to explore
  1773. the requirements of a more diverse set of applications, while finding a
  1774. more efficient means of coding low bit rate/low sample rate video and
  1775. audio signals.
  1776.  
  1777. Today, MPEG (video and systems) is exclusive syntax of the United
  1778. States Grand Alliance HDTV specification, the European Digital Video
  1779. Broadcasting Group, and the high density compact disc (lead by rivals
  1780. Sony/Philips and Toshiba).
  1781.  
  1782. What is MPEG video syntax ?
  1783.  
  1784. MPEG video syntax provides an efficient way to represent image
  1785. sequences in the form of more compact coded data. The language of the
  1786. coded bits is the syntax.  For example, a few tokens can represent an
  1787. entire block of 64 samples. MPEG also describes a decoding
  1788. (reconstruction) process where the coded bits are mapped from the
  1789. compact representation into the original, raw format of the image
  1790. sequence. For example, a flag in the coded bitstream signals whether
  1791. the following bits are to be decoded with a DCT algorithm or with a
  1792. prediction algorithm. The algorithms comprising the decoding process
  1793. are regulated by the semantics defined by MPEG. This syntax can be
  1794. applied to exploit common video characteristics such as spatial
  1795. redundancy, temporal redundancy, uniform motion, spatial masking, etc.
  1796.  
  1797. MPEG Myths
  1798.  
  1799. A brief summary myths.
  1800.  
  1801. 1. Compression Ratios over 100:1
  1802.  
  1803. Articles in the press and marketing literature will often make the
  1804. claim that MPEG can achieve high quality video with compression ratios
  1805. over 100:1.  These figures often include the oversampling factors in
  1806. the source video.  In reality, the coded sample rate specified in an
  1807. MPEG image sequence is usually not much larger than 30 times the
  1808. specified bit rate.   Pre-compression through subsampling is chiefly
  1809. responsible for 3 digit ratios for all video coding methods, including
  1810. those of the non-MPEG variety.
  1811.  
  1812. 2. MPEG-1 is 352x240
  1813.  
  1814. Both MPEG-1 and MPEG-2 video syntax can be applied at a wide range of
  1815. bitrates and sample rates.  The MPEG-1 that most people are familiar
  1816. with has parameters of 30 SIF pictures (352 pixels x 240 lines) per
  1817. second and a bitrate less than 1.86  megabits/sec----a combination
  1818. known as "Constrained Parameters Bitstreams".  This popular
  1819. interoperability point is promoted by Compact Disc Video (White Book).
  1820. In fact, it is syntactically possible to encode picture dimensions as
  1821. high as 4095 x 4095 and a bitrates up to 100 Mbit/sec.  With the advent
  1822. of the MPEG-2 specification, the most popular combinations have
  1823. coagulated into Levels, which are described later in this text.  The
  1824. two most common are affectionately known as SIF (e.g. 352 pixels x 240
  1825. lines x 30 frames/sec), or Low Level, and CCIR 601 (e.g. 720
  1826. pixels/line x 480 lines x 30 frames/sec), or Main Level.
  1827.  
  1828. 3. Motion Compensation displaces macroblocks from previous pictures
  1829.  
  1830. Macroblock predictions are formed out of arbitrary 16x16 pixel (or 16x8
  1831. in MPEG-2) areas from previously reconstructed pictures. There are no
  1832. boundaries which limit the location of a macroblock prediction within
  1833. the previous picture,  other than the edges of the picture.
  1834.  
  1835.  
  1836. 4. Display picture size is the same as the coded picture size
  1837.  
  1838. In MPEG, the display picture size and frame rate may differ from the
  1839. size (resolution) and frame rate encoded into the bitstream.  For
  1840. example, a regular pattern of pictures in a source image sequence may
  1841. be dropped (decimated), and then each picture may itself be filtered
  1842. and subsampled prior to encoding. Upon reconstruction, the picture may
  1843. be interpolated and upsampled back to the source size and frame rate.
  1844. In fact, the three fundamental phases (Source Rate, Coded Rate, and
  1845. Display Rate) may differ by several parameters.  The MPEG syntax can
  1846. separately describe Coded and Display Rates through sequence_headers,
  1847. but the Source Rate is known only by the encoder.
  1848.  
  1849.  
  1850. 5. Picture coding types (I, P, B) all consist of the same macroblocks types.
  1851.  
  1852. All macroblocks within an I picture must be coded Intra (like a
  1853. baseline JPEG picture).  However, macroblocks within a P picture may
  1854. either be coded as Intra or Non-intra (temporally predicted from a
  1855. previously reconstructed picture). Finally, macroblocks within the B
  1856. picture can be independently selected as either Intra, Forward
  1857. predicted, Backward predicted, or both forward and backward
  1858. (Interpolated) predicted. The macroblock header contains an element,
  1859. called macroblock_type, which can flip these modes on and off like
  1860. switches.  macroblock_type is possibly the single most powerful element
  1861. in the whole of video syntax. Picture types (I, P, and B) merely enable
  1862. macroblock modes by widening the scope of the semantics.  The component
  1863. switches are:
  1864.  
  1865.   1. Intra  or Non-intra
  1866.   2. Forward temporally predicted (motion_forward)
  1867.   3. Backward temporally predicted (motion_backward)
  1868.       (2+3 in combination represent "Interpolated")
  1869.   4. conditional replenishment (macroblock_pattern).
  1870.   5. adaptation in quantization (macroblock_quantizer). 
  1871.   6. temporally predicted without motion compensation
  1872.  
  1873. The first 5 switches are mostly orthogonal (the 6th is derived from the
  1874. 1st and 2nd in P pictures, and does not exist in B pictures).  Some
  1875. switches are non-applicable in the presence of others.  For example, in
  1876. an Intra macroblock, all 6 blocks by definition contain DCT data,
  1877. therefore there is no need to signal either the macroblock_pattern or
  1878. any of the temporal prediction switches.  Likewise, when there is no
  1879. coded prediction error information in a Non-intra macroblock, the
  1880. macroblock_quantizer signal would have no meaning.
  1881.  
  1882.  
  1883. 6. Sequence structure is fixed to a specific I,P,B frame pattern.
  1884.  
  1885. A sequence may consist of almost any pattern of I, P, and B pictures
  1886. (there are a few minor semantic restrictions on their placement).  It
  1887. is common in industrial practice to have a fixed pattern (e.g.
  1888. IBBPBBPBBPBBPBB), however, more advanced encoders will attempt to
  1889. optimize the placement of the three picture types according to local
  1890. sequence characteristics in the context of more global
  1891. characteristics.  Each picture type carries a penalty when coupled with
  1892. the statistics of a particular picture (temporal masking, occlusion,
  1893. motion activity, etc.).
  1894.  
  1895. The variable length codes of the macroblock_type switch provide a
  1896. direct clue, but it is the full scope of semantics of each picture type
  1897. spell out the costs-benefits. For example, if the image sequence
  1898. changes little from frame-to-frame, it is sensible to code more B
  1899. pictures than P.  Since B pictures by definition are never fed back
  1900. into the prediction loop (i.e. not used as prediction for future
  1901. pictures), bits spent on the picture are wasted in a sense (B pictures
  1902. are like temporal spackle).  Application requirements also govern
  1903. picture type placement: random access points, mismatch/drift reduction,
  1904. channel hopping, program indexing, and error recovery & concealment.
  1905.  
  1906.  
  1907. The 6 Steps to Claiming Bogously High Compression Ratios:
  1908.  
  1909. MPEG video is often quoted as achieving compression ratios over 100:1,
  1910. when in reality the sweet spot rests between 8:1 and 30:1.
  1911.  
  1912. Heres how the fabled greater than 100:1 reduction ratio is derived for
  1913. the popular Compact Disc Video (White Book) bitrate of 1.15 Mbit/sec.
  1914.  
  1915. Step 1.  Start with the oversampled rate
  1916.  
  1917.   Most MPEG video sources originate at a higher sample rate than the
  1918.   "target sample rate encoded into the final MPEG bitstream.  The most
  1919.   popular studio signal, known canonically as D-1 or CCIR 601 digital
  1920.   video, is coded at 270 Mbit/sec.
  1921.  
  1922. The constant, 270 Mbit/sec, can be derived as follows:
  1923.  
  1924. Luminance (Y): 858 samples/line x 525 lines/frame x 30 frames/sec x 
  1925.                10 bits/sample ~= 135 Mbit/sec
  1926.  
  1927. R-Y          (Cb):    429 samples/line x 525 lines/frame x 30 frames/sec x 
  1928.                10 bits/sample ~= 68 Mbit/sec       
  1929.  
  1930. B-Y          (Cb):    429 samples/line x 525 lines/frame x 30 frames/sec x 
  1931.                10 bits/sample ~= 68 Mbit/sec       
  1932.  
  1933. Total:       27 million samples/sec x  10 bits/sample =  270 Mbit/sec.
  1934.  
  1935. So, our compression ratio is:  270/1.15... an amazing  235:1 !!
  1936.  
  1937.  
  1938. Step 2. Include blanking intervals
  1939.  
  1940. Only 720 out of the 858 luminance samples per line contain active
  1941. picture information.  In fact, the debate over the true number of
  1942. active samples is the cause of many hair-pulling cat-fights at TV
  1943. engineering seminars and conventions, so it is safer to say that the
  1944. number lies somewhere between 704 and 720.  Likewise, only 480 lines
  1945. out of the 525 lines contain  active picture information.  Again, the
  1946. actual number is somewhere between 480 and 496.  For the purposes of
  1947. MPEG-1s and MPEG-2s famous conformance points (Constrained Parameters
  1948. Bitstreams and Main Level, respectively), the number shall be 704
  1949. samples x 480 lines for luminance, and 352 samples x 480 lines for each
  1950. of the two chrominance pictures. Recomputing the source rate, we arrive
  1951. at:
  1952.  
  1953. (luminance)      
  1954.    704 samples/line x 480 lines x 30 fps x 10 bits/sample ~= 104 Mbit/sec 
  1955.  
  1956. (chrominance)  
  1957.   2 components x 352 samples/line x 480 lines x 30 fps x 10 bits/sample 
  1958.    ~= 104 Mbit/sec 
  1959.  
  1960. Total:  ~  207 Mbit/sec
  1961.  
  1962. The ratio (207/1.15)  is now only 180:1
  1963.  
  1964.  
  1965. Step 3.  Include higher bits/sample
  1966.  
  1967. The MPEG sample precision is 8 bits.  Studio equipment often quantize
  1968. samples with 10 bits of accuracy.  The 2-bit improvement to the dynamic
  1969. range is considered useful for suppressing noise in multi-generation
  1970. video.
  1971.  
  1972. The ratio is now only 180 * (8/10 ), or  144:1
  1973.  
  1974. Step 4.  Include higher chroma ratio
  1975.  
  1976. The famous CCIR-601studio signal represents the chroma signals (Cb, Cr)
  1977. with half the horizontal sample density as the luminance signal, but
  1978. with full vertical resolution.  This particular ratio of subsampled
  1979. components is known as 4:2:2.  However, MPEG-1 and MPEG-2 Main Profile
  1980. specify the exclusive use of the 4:2:0 format, deemed sufficient for
  1981. consumer applications, where both chrominance signals have exactly half
  1982. the horizontal and vertical resolution as luminance (the MPEG Studio
  1983. Profile, however, centers around the 4:2:2 macroblock structure). Seen
  1984. from the perspective of pixels being comprised of samples from multiple
  1985. components, the 4:2:2 signal can be expressed as having an average of 2
  1986. samples per pixel (1 for Y, 0.5 for Cb, and 0.5 for Cr).  Thanks to the
  1987. reduction in the vertical direction (resulting in a 352 x 240
  1988. chrominance frame), the 4:2:0 signal would, in effect, have an average
  1989. of 1.5 samples per pixel (1 for Y, and 0.25 for Cb and Cr each). Our
  1990. source video bit rate may now be recomputed as:
  1991.  
  1992.   720 pixels x 480 lines x 30 fps x 8 bits/sample x 1.5 samples/pixel 
  1993.      = 124 Mbit/sec
  1994.  
  1995. ... and the ratio is now 108:1.
  1996.  
  1997. Step 5.  Include pre-subsampled image size
  1998.  
  1999. As a final act of pre-compression, the CCIR 601 frame is converted to
  2000. the SIF frame by a subsampling of 2:1 in both the horizontal and
  2001. vertical directions.... or 4:1 overall.  Quality horizontal subsampling
  2002. can be achieved by the application of a simple FIR filter (7 or 4 taps,
  2003. for example), and vertical subsampling by either dropping every other
  2004. field (in effect, dropping every other line) or again by an FIR filter
  2005. (regulated by an interfield motion detection algorithm).  Our ratio now
  2006. becomes:
  2007.  
  2008.     352 pixels x 240 lines x 30 fps x 8 bits/sample x 1.5 samples/pixel 
  2009.    ~= 30 Mbit/sec !!
  2010.  
  2011. .. and the ratio is now only 26:1 
  2012.  
  2013. Thus, the true A/B comparison should be between the source sequence at
  2014. the 30 Mbit/sec stage, the actual specified sample rate in the MPEG
  2015. bitstream, and the reconstructed sequence produced from the 1.15
  2016. Mbit/sec coded bitstream.
  2017.  
  2018. Step 6.   Don't forget the 3:2 pulldown
  2019.  
  2020. A majority of high-end programs originates from film.  Most of the
  2021. movies encoded onto Compact Disc Video were in captured and reproduced
  2022. at 24 frames/sec.  So, in such an image sequence, 6 out of the 30
  2023. frames every second are in fact redundant and need not be coded into
  2024. the MPEG bitstream, leading to the shocking discovery that the actual
  2025. soure bit rate has really been  24 Mbit/sec all along, and the
  2026. compression ratio a mere 21:1 !!!  Even at the seemingly modest 20:1
  2027. ratio, discrepancies will appear between the 24 Mbit/sec source
  2028. sequence and the reconstructed sequence.  Only conservative ratios in
  2029. the neighborhood of 8:1 have demonstrated true transparency for
  2030. sequences with complex spatial-temporal characteristics (i.e.  rapid,
  2031. divergent motion and sharp edges, textures, etc.).  However, if the
  2032. video is carefully encoded by means of pre-processing and intelligent
  2033. distribution of  bits, higher ratios can be made to appear at least
  2034. artifact-free.
  2035.  
  2036.  
  2037. What are the parts of the MPEG document?
  2038.  
  2039. The MPEG-1 specification (official title: ISO/IEC 11172 Information
  2040. technology  Coding of moving pictures and associated audio for digital
  2041. storage media at up to about 1.5 Mbit/s, Copyright 1993.) consists of
  2042. five parts.  Each document is a part of the ISO/IEC number 11172.  The
  2043. first three parts reached International Standard in 1993.  Part 4
  2044. reached IS in 1994.  In mid 1995, Part 5 will go IS.
  2045.  
  2046. Part 1---Systems:  The first part of the MPEG standard has two primary
  2047. purposes:  1). a syntax for transporting packets of audio and video
  2048. bitstreams over digital channels and storage mediums (DSM),  2). a
  2049. syntax for synchronizing video and audio streams.
  2050.  
  2051. Part 2---Video: describes syntax (header and bitstream elements) and
  2052. semantics (algorithms telling what to do with the bits). Video breaks
  2053. the image sequence into a series of nested layers, each containing a
  2054. finer granularity of sample clusters (sequence, picture, slice,
  2055. macroblock, block, sample/coefficient).  At each layer, algorithms are
  2056. made available which can be used in combination to achieve efficient
  2057. compression.  The syntax also provides a number of different means for
  2058. assisting decoders in synchronization, random access, buffer
  2059. regulation, and error recovery.  The highest layer, sequence, defines
  2060. the frame rate and picture pixel dimensions for the encoded image
  2061. sequence.
  2062.  
  2063. Part 3---Audio: describes syntax and semantics for three classes of
  2064. compression methods. Known as Layers I, II, and III, the classes trade
  2065. increased syntax and coding complexity for improved coding efficiency
  2066. at lower bitrates.  The Layer II is the industrial favorite, applied
  2067. almost exclusively in satellite broadcasting (Hughes DSS) and  compact
  2068. disc video  (White Book).  Layer I has similarities in terms of
  2069. complexity, efficiency, and syntax to the Sony MiniDisc and the Philips
  2070. Digitial Compact Cassette (DCC). Layer III has found a home in ISDN,
  2071. satellite, and Internet audio applications. The sweet spots for the
  2072. three layers are 384 kbit/sec (DCC), 224 kbit/sec (CD Video, DSS), and
  2073. 128 Kbits/sec (ISDN/Internet), respectively.
  2074.  
  2075. Part 4---Conformance: (circa 1992) defines the meaning of  MPEG
  2076. conformance for all three parts (Systems, Video, and Audio), and
  2077. provides two sets of test guidelines for determining compliance in
  2078. bitstreams and decoders.  MPEG does not directly address encoder
  2079. compliance.
  2080.  
  2081. Part 5---Software Simulation: Contains an example ANSI C language
  2082. software encoder and  compliant decoder for video and audio.  An
  2083. example systems codec is also provided which can multiplex and
  2084. demultiplex separate video and audio elementary streams contained in
  2085. computer data files.
  2086.  
  2087.  
  2088. As of March 1995, the MPEG-2 volume consists of a total of 9 parts
  2089. under ISO/IEC 13818.  Part 2 was jointly developed with the ITU-T,
  2090. where it is known as recommendation H.262. The full title is:
  2091. Information Technology--Generic Coding of Moving Pictures and
  2092. Associated Audio. ISO/IEC 13818. The first five parts are organized in
  2093. the same fashion as MPEG-1(System, Video, Audio, Conformance, and
  2094. Software).  The four additional parts are listed below:
  2095.  
  2096. Part 6  Digital Storage Medium Command and Control (DSM-CC): provides a
  2097. syntax for controlling VCR- style playback and random-access of
  2098. bitstreams encoded onto digital storage mediums such as compact disc.
  2099. Playback commands include Still frame, Fast Forward, Advance, Goto.
  2100.  
  2101. Part 7  Non-Backwards Compatible Audio (NBC):  addresses the need for a
  2102. new syntax to efficiently de- correlate discrete mutlichannel surround
  2103. sound audio.  By contrast, MPEG-2 audio (13818-3) attempts to code the
  2104. surround channels as an ancillary data to the MPEG-1
  2105. backwards-compatible Left and Right channels. This allows existing
  2106. MPEG-1 decoders to parse and decode only the two primary channels while
  2107. ignoring the side channels (parse to /dev/null).  This is analogous to
  2108. the Base Layer concept in MPEG-2 Scalable video. NBC candidates include
  2109. non-compatible syntaxs such as Dolby AC-3.  Final document is not
  2110. expected until 1996.
  2111.  
  2112. Part 8  10-bit video extension.  Introduced in late 1994, this
  2113. extension to the video part (13818-2) describes the syntax and
  2114. semantics to coded representation of video with 10-bits of sample
  2115. precision.  The primary application is studio video (distribution,
  2116. editing, archiving).  Methods have been investigated by Kodak and
  2117. Tektronix which employ Spatial scalablity, where the 8-bit signal
  2118. becomes the Base Layer, and the 2-bit differential signal is coded as
  2119. an Enhancement Layer.  Final document is not expected until 1997 or
  2120. 1998.  [Part 8 will be withdrawn]
  2121.  
  2122. <IMG SRC="mpeg2lay.gif">
  2123.  
  2124. <IMG SRC="mpeg2la2.gif">
  2125.  
  2126. Part 9  Real-time Interface (RTI): defines a syntax for video on demand
  2127. control signals between set-top boxes and head-end servers.
  2128.  
  2129. What is the evolution of an MPEG/ISO document?
  2130.  
  2131. In chronological order:
  2132.  
  2133. Abbr.    ISO/Committee notation            Author's notation        
  2134. -----    -------------------------------   -----------------------------
  2135.  -       Problem (unofficial first stage)  barroom witticism or dare
  2136. NI       New work Item                     Napkin Item
  2137. NP       New Proposal                      Need Permission
  2138. WD       Working Draft                     We're Drunk
  2139. CD       Committee Draft                   Calendar Deadlock
  2140. DIS      Draft International Standard      Doesn't Include Substance
  2141. IS       International Standard            Induced patent Statements
  2142.  
  2143.  
  2144. Introductory paper to MPEG?
  2145.  
  2146. Didier Le Gall, "MPEG: A Video Compression Standard for Multimedia
  2147. Applications," Communications of the ACM, April 1991, Vol.34, No.4, pp.
  2148. 47-58
  2149.  
  2150.  
  2151. MPEG in periodicals?
  2152.  
  2153. The following journals and conferences have been known to contain
  2154. information relating to MPEG:
  2155.  
  2156.  
  2157.   IEEE Transactions on Consumer Electronics
  2158.   IEEE Transactions on Broadcasting
  2159.   IEEE Transactions on Circuits and Systems for Video Technology
  2160.   Advanced Electronic Imaging
  2161.   Electronic Engineering Times (EE Times)
  2162.   IEEE Int'l Conference on Acoustics, Speech, and Signal Processing (ICASSP)
  2163.   International Broadcasting Convention (IBC)
  2164.   Society of Motion Pictures and Television Engineers Journal (SMPTE)
  2165.   SPIE conference on Visual Communications and Image Processing
  2166.  
  2167.  
  2168. MPEG Book?
  2169.  
  2170. Several MPEG books are under development.  
  2171.  
  2172. An MPEG book will be produced by the same team behind the JPEG book:
  2173. Joan Mitchell and Bill Pennebaker.... along with Didier Le Gall. It is
  2174. expected to be a tutorial on MPEG-1 video and some MPEG-2 video. Van
  2175. Nostran Reinhold in 1995.
  2176.  
  2177. A book, in the Japanese language, has already been published (ISBN:
  2178. 4-7561-0247-6).  The title is called MPEG by ASCII publishing.
  2179.  
  2180. Keith Jack's second edition of Video Demystified, to be published in
  2181. August 1995, will feature a large chapter on MPEG video.  Information:
  2182. ftp://ftp.pub.netcom/pub/kj/kjack/
  2183.  
  2184.  
  2185.  
  2186. MPEG is a DCT based scheme?
  2187.  
  2188. The DCT and Huffman algorithms receive the most press coverage (e.g.
  2189. "MPEG is a DCT based scheme with Huffman coding"), but are in fact less
  2190. significant when compared to the variety of coding modes signaled to
  2191. the decoder as context-dependent side information. The MPEG-1 and
  2192. MPEG-2 IDCT has the same definition as H.261, H.263, JPEG.
  2193.  
  2194.  
  2195. What are constant and variable bitrate streams?
  2196.  
  2197. Constant bitrate streams are buffer regulated to allow continuos
  2198. transfer of coded data across a constant rate channel without causing
  2199. an overflow or underflow to a buffer on the receiving end.  It is the
  2200. responsibility of the Encoders Rate Control stage to generate
  2201. bitstreams which prevent buffer overflow and underflow.  The constant
  2202. bit rate encoding can be modeled as a reservoir:  variable sized coded
  2203. pictures flow into the bit reservoir, but the reservoir is drained at a
  2204. constant rate into the communications channel.  The most challenging
  2205. aspect of a constant rate encoder is, yes, to maintain constant channel
  2206. rate (without overflowing or underflow a buffer of a fixed depth) while
  2207. maintaining constant perceptual picture quality.
  2208.  
  2209. In the simplest form, variable rate bitstreams do not obey any buffer
  2210. rules, but will maintain constant picture quality.  Constant picture
  2211. quality is easiest to achieve by holding the macroblock quantizer step
  2212. size constant (e.g. level 16 of 31).  In its most advanced form, a
  2213. variable bitrate stream may be more difficult to generate than
  2214. constant bitrate streams.  In advanced variable bitrate streams, the
  2215. instantaneous bit rate (piece-wise bit rate) may be controlled by
  2216. factors such as:  1. local activity measured against activity over
  2217. large time intervals (e.g. the full span of a movie), or 2.
  2218. instantaneous bandwidth availability of a communications channel.
  2219.  
  2220. Summary of bitstream types
  2221. Bitrate type
  2222. Applications
  2223.  
  2224. constant-rate
  2225. fixed-rate communications channels like the original Compact Disc,
  2226. digital video tape, single channel-per-carrier broadcast signal, hard
  2227. disk storage
  2228.  
  2229. simple variable-rate
  2230. software decoders where the bitstream buffer (VBV) is the storage
  2231. medium itself (very large).  macroblock quantization scale is typically
  2232. held constant over large number of macroblocks.
  2233.  
  2234. complex variable-rate
  2235. Statistical muliplexing (multiple-channel-per-carrier broadcast
  2236. signals), compact discs and hard disks where the servo mechanisms can
  2237. be controlled to increase or decrease the channel delivery rate,
  2238. networked video where overall channel rate is constant but demand is
  2239. variably share by multiple users, bitstreams which achieve average
  2240. rates over very long time averages
  2241.  
  2242.  
  2243.  
  2244. What is statistical multiplexing ?
  2245.  
  2246. Progressive explanation:
  2247. In the simplest coded bitstream, a PCM (Pulse Coded Modulated) digital
  2248. signal, all samples have an equal number of bits. Bit distribution in a
  2249. PCM image sequence is therefore not only uniform within a picture,
  2250. (bits distributed along zero dimensions), but is also uniform across
  2251. the full sequence of pictures.
  2252.  
  2253. Audio coding algorithms such as MPEG-1s Layer I and II are capable of
  2254. distributing bits over a one dimensional space, spanned by a frame.  In
  2255. layer II, for example, an audio channel coded at a bitrate of 128
  2256. bits/sec and sample rate of 44.1 Khz will have frames (which consist of
  2257. 1152 subband coefficients each) coded with approximately 334 bits.
  2258. Some subbands will receive more bits than others.
  2259.  
  2260. In block-based still image compression methods which employ 2-D
  2261. transform coding methods, bits are distributed over a 2 dimensional
  2262. space (horizontal and vertical) within the block. Further, blocks
  2263. throughout the picture may contain a varying number of bits as a
  2264. result, for example, of adaptive quantization. For example, background
  2265. sky may contain an average of only 50 bits per block, whereas complex
  2266. areas containing flowers or text may contain more than 200 bits per
  2267. block.  In the typical adaptive quantization scheme, more bits are
  2268. allocated to perceptually more complex areas in the picture.  The
  2269. quantization stepsizes can be selected against an overall picture
  2270. normalization constant, to achieve a target bit rate for the whole
  2271. picture. An encoder which generates coded image sequences comprised of
  2272. independently coded still pictures, such as JPEG Motion video or MPEG
  2273. Intra picture sequences,  will typically generate coded pictures of
  2274. equal bit size.
  2275.  
  2276. MPEG non-intra coding introduces the concept of the distribution of
  2277. bits across multiple pictures, augmenting the distribution space to 3
  2278. dimensions. Bits are now allocated to more complex pictures in the
  2279. image sequence, normalized by the target bit size of the group of
  2280. pictures, while at a lower layer, bits within a picture are still
  2281. distributed according to more complex areas within the picture. Yet in
  2282. most applications, especially those of the Constant Bitrate class, a
  2283. restriction is placed in the encoder which guarantees that after a
  2284. period of time, e.g. 0.25 seconds, the coded bitstream achieves a
  2285. constant rate (in MPEG, the Video Buffer Verifier regulates the
  2286. variable-to-constant rate mapping).  The mapping of an inherently
  2287. variable bitrate coded signal to a constant rate allows consistent
  2288. delivery of the program over a fixed-rate communications channel.
  2289.  
  2290. Statistical multiplexing takes the bit distribution model to 4
  2291. dimensions:  horizontal, vertical, temporal, and program axis.  The 4th
  2292. dimension is enabled by the practice of mulitplexing multiple programs
  2293. (each, for example, with  respective video and audio bitstreams) on a
  2294. common data carrier. In the Hughes' DSS system, a single data carrier
  2295. is modulated with a payload capacity of 23 Mbits/sec, but a typical
  2296. program will be transported at average bit rate of 6 Mbit/sec each. In
  2297. the 4-D model, bits may be distributed according the relative
  2298. complexity of each program against the complexities of the other
  2299. programs of the common data carrier.  For example, a program undergoing
  2300. a rapid scene change will be assigned the highest bit allocation
  2301. priority, whereas the program with a near-motionless scene will receive
  2302. the lowest priority, or fewest bits.
  2303.  
  2304.  
  2305. How does MPEG achieve compression? 
  2306.  
  2307. Here are some typical statistical conditions addressed by specific
  2308. syntax and semantic tools:
  2309.  
  2310. 1. Spatial correlation:  transform coding with 8x8 DCT.
  2311.  
  2312. 2. Human Visual Response---less acuity for higher spatial frequencies:
  2313. lossy scalar quantization of the DCT coefficients.
  2314.  
  2315. 3. Correlation across wide areas of the picture:  prediction of the DC
  2316. coefficient in the 8x8 DCT block.
  2317.  
  2318. 4. Statistically more likely coded bitstream elements/tokens:  variable
  2319. length coding of macroblock_address_increment, macroblock_type,
  2320. coded_block_pattern, motion vector prediction error magnitude, DC
  2321. coefficient prediction error magnitude.
  2322.  
  2323.  
  2324. 5. Quantized blocks with sparse quantized matrix of DCT coefficients:
  2325. end_of_block token (variable length symbol).
  2326.  
  2327. 6. Spatial masking:  macroblock quantization scale factor.
  2328.  
  2329. 7. Local coding adapted to overall picture perception (content
  2330. dependent coding):  macroblock quantization scale factor.
  2331.  
  2332. 8. Adaptation to local picture characteristics:  block based coding,
  2333. macroblock_type, adaptive quantization.
  2334.  
  2335. 9. Constant stepsizes in adaptive quantization:  new quantization scale
  2336. factor signaled only by special macroblock_type codes.  (adaptive
  2337. quantization scale not transmitted by default).
  2338.  
  2339. 10. Temporal redundancy:  forward, backwards macroblock_type and motion
  2340. vectors at macroblock (16x16) granularity.
  2341.  
  2342. 11. Perceptual coding of macroblock temporal prediction error: adaptive
  2343. quantization and quantization of DCT transform coefficients (same
  2344. mechanism as Intra blocks).
  2345.  
  2346. 12. Low quantized macroblock prediction error:  No prediction error for
  2347. the macroblock may be signaled within macroblock_type.  This is the
  2348. macroblock_pattern switch.
  2349.  
  2350. 13. Finer granularity coding of macroblock prediction error: Each of
  2351. the blocks within a macroblock may be coded or not coded. Selective
  2352. on/off coding of each block is achieved with the separate
  2353. coded_block_pattern variable-length symbol, which is present in the
  2354. macroblock only of the macroblock_pattern switch has been set.
  2355.  
  2356. 14. Uniform motion vector fields (smooth optical flow fields):
  2357. prediction of  motion vectors.
  2358.  
  2359. 15. Occlusion:  forwards or backwards temporal prediction in B
  2360. pictures.  Example: an object becomes temporarily obscured by another
  2361. object within an image sequence. As a result, there may be an area of
  2362. samples in a previous picture (forward reference/prediction picture)
  2363. which has similar energy to a macroblock in the current picture (thus
  2364. it is a good prediction), but no areas within a future picture
  2365. (backward reference) are similar enough. Therefore only forwards
  2366. prediction would be selected by macroblock type of the current
  2367. macroblock. Likewise, a good prediction may only be found in a future
  2368. picture, but not in the past.  In most cases, the object, or
  2369. correlation area,  will be present in both forward and backward
  2370. references.  macroblock_type can select the best of the three
  2371. combinations.
  2372.  
  2373. 16. Sub-sample temporal prediction accuracy: bi-linearly interpolated
  2374. (filtered) "half-pel" block predictions.  Real world motion
  2375. displacements of objects (correlation areas) from picture-to-picture do
  2376. not fall on integer pel boundaries, but on  irrational . Half-pel
  2377. interpolation attempts to extract the true object to within one order
  2378. of approximation, often improving compression efficiency by at least 1
  2379. dB.
  2380.  
  2381. 17. Limited motion activity in P pictures: skipped macroblocks. When
  2382. the motion vector is zero for both the horizontal and vertical vector
  2383. components, and no quantized prediction error for the current
  2384. macroblock is present. Skipped macroblocks are the most desirable
  2385. element in the bitstream since they consume no bits, except for a
  2386. slight increase in the bits of the next non-skipped macroblock.
  2387.  
  2388. 18. Co-planar motion within B pictures: skipped macroblocks.  When the
  2389. motion vector is the same as the previous macroblocks, and no quantized
  2390. prediction error for the current macroblock is present.
  2391.  
  2392. What is the difference between MPEG-1 and MPEG-2 syntax?
  2393.  
  2394. Section D.9 of ISO/IEC 13818-2 is an informative piece of text
  2395. describing the differences between MPEG-1 and MPEG-2 video syntax.  The
  2396. following is a little more informal.
  2397.  
  2398. Sequence layer:
  2399. MPEG-2 can represent interlaced or progressive video sequences,
  2400. whereas  MPEG-1 is strictly meant for progressive sequences since the
  2401. target application was Compact Disc video coded at 1.2 Mbit/sec.
  2402.  
  2403. MPEG-2 changed the meaning behind the aspect_ratio_information
  2404. variable, while significantly reducing the number of defined aspect
  2405. ratios in the table.  In MPEG-2, aspect_ratio_information refers to the
  2406. overall display aspect ratio (e.g. 4:3,  16:9), whereas in MPEG-2, the
  2407. ratio refers to the particular pixel.  The reduction in the entries of
  2408. the aspect ratio table also helps interoperability by limiting the
  2409. number of possible modes to a practical set, much like frame_rate_code
  2410. limits the number of display frame rates that can be represented.
  2411. Optional picture header variables called display_horizontal_size and
  2412. display_vertical_size can be used to code unusual display sizes.
  2413.  
  2414. frame_rate_code in MPEG-2 refers to the intended display rate, whereas
  2415. in MPEG-1 it referred to the coded frame rate.  In film source video,
  2416. there are often 24 coded frames per second.   Prior to bitstream
  2417. coding, a good encoder will eliminate the redundant 6 frames or 12
  2418. fields from a 30 frame/sec video signal which encapsulates an
  2419. inherently 24 frame/sec video source.  The MPEG decoder or display
  2420. device will then repeat frames or fields to recreate or synthesize the
  2421. 30 frame/sec display rate.  In MPEG-1, the decoder could only infer the
  2422. intended frame rate, or derive it based on the Systems layer time
  2423. stamps.  MPEG-2 provides specific picture header variables called
  2424. repeat_first_field and top_field_first which explicitly signal which
  2425. frames or fields are to be repeated, and how many times.
  2426.  
  2427. To address the concern of software decoders which may operate at rates
  2428. lower or different than the common television rates, two new variables
  2429. in MPEG-2 called frame_rate_extension_d and frame_rate_extension_n can
  2430. be combined with frame_rate_code to specify a much wider variety of
  2431. display frame rates.  However, in the current set of define profiles
  2432. and levels, these two variables are not allowed to change the value
  2433. specified by frame_rate_code.  Future extensions or Profiles of MPEG
  2434. may enable them.
  2435.  
  2436. In interlaced sequences, the coded macroblock height (mb_height) of a
  2437. picture must be a multiple of 32 pixels, while the width, like MPEG-1,
  2438. is a coded multiple of 16 pixels.  A discrepancy between the coded
  2439. width and height of a picture and the variables horizontal_size and
  2440. vertical_size, respectively, occurs when either variable is not an
  2441. integer multiple of macroblocks.  All pixels must be coded within
  2442. macroblocks, since there cannot be such a thing as fractional
  2443. macroblocks.  Never intended for display, these overhang pixels or
  2444. lines exist along the left  and bottom edges of the coded picture.  The
  2445. sample values within these trims can be arbitrary, but they can affect
  2446. the values of samples within the current picture, and especially future
  2447. coded pictures.  In the current pictures, pixels which reside within
  2448. the same 8x8 block as the overhang pixels are affect by the ripples of
  2449. DCT quantization error.  In future coded pictures,  their energy can
  2450. propagate anywhere within an image sequence as a result of motion
  2451. compensated prediction.  An encoder should fill in values which are
  2452. easy to code, and should probably avoid creating motion vectors which
  2453. would cause the Motion Compensated Prediction stage to extract samples
  2454. from these areas.  The application should probably select
  2455. horizontal_size and vertical_size that are already multiples of 16 (or
  2456. 32 in the vertical case of interlaced sequences) to begin with.
  2457.  
  2458.  
  2459. Group of Pictures:
  2460. The concept of the Group of Pictures layer does not exist in MPEG-2.
  2461. It is an optional header useful only for establishing a SMPTE time code
  2462. or for indicating that certain B pictures at the beginning of an edited
  2463. sequence comprise a broken_link.  This occurs when the current B
  2464. picture requires prediction from a forward reference frame (previous in
  2465. time to the current picture) has been removed from the bitstream by an
  2466. editing process.  In MPEG-1, the Group of Pictures header is mandatory,
  2467. and must follow a sequence header.
  2468.  
  2469.  
  2470. Picture layer:
  2471. In MPEG-2, a frame may be coded progressively or interlaced, signaled
  2472. by the progressive_frame variable.  In interlaced frames
  2473. (progressive_frame==0), frames  may then be coded as either a frame
  2474. picture (picture_structure==frame) or as two separately coded field
  2475. pictures (picture_structure==top_field or
  2476. picture_structure==bottom_field).  Progressive frames are a logic
  2477. choice for video material which originated from film, where all pixels
  2478. are integrated or captured at the same time instant.  Most electronic
  2479. cameras today capture pictures in two separate stages: a top field
  2480. consisting of all odd lines of the picture are nearly captured in the
  2481. time instant, followed by a bottom field of all even lines.  Frame
  2482. pictures provide the option of coding each macroblock locally as either
  2483. field or frame.  An encoder may choose field pictures to save memory
  2484. storage or reduce the end-to-end encoder-decoder delay by one field
  2485. period.
  2486.  
  2487.  
  2488. There is no longer such a thing called D pictures in MPEG-2 syntax.
  2489. However, Main Profile @ Main Level MPEG-2 decoders, for example, are
  2490. still required to decode D pictures at Main Level (e.g. 720x480x30
  2491. Hz).  The usefulness of D pictures, a concept from the year 1990,  had
  2492. evaporated by the time MPEG-2 solidified in 1993.
  2493.  
  2494. repeat_first_field was introduced in MPEG-2 to signal that a field or
  2495. frame from the current frame is to be repeated for purposes of frame
  2496. rate conversion (as in the 30 Hz display vs. 24 Hz coded example
  2497. above). On average in a 24 frame/sec coded sequence, every other coded
  2498. frame would signal the repeat_first_field flag.  Thus the 24 frame/sec
  2499. (or 48 field/sec) coded sequence would become a 30 frame/sec (60
  2500. field/sec) display sequence.  This processes has been known for decades
  2501. as 3:2 Pulldown. Most movies seen on NTSC displays since the advent of
  2502. television have been displayed this way. Only within the past decade
  2503. has it become possible to interpolate motion to create 30 truly unique
  2504. frames from the original 24. Since the repeat_first_field flag is
  2505. independently determined in every frame structured picture, the actual
  2506. pattern can be irregular (it doesnt have to be every other frame
  2507. literally).  An irregularity would occur during a scene cut, for
  2508. example.
  2509.  
  2510.  
  2511. Slice:
  2512. To aid implementations which break the decoding process into parallel
  2513. operations along horizontal strips within the same picture, MPEG-2
  2514. introduced a general semantic  mandatory requirement that all
  2515. macroblock rows must start and end with at least one slice.  Since a
  2516. slice commences with a start code, it can be identified by
  2517. inexpensively parsing through the bitstream along byte boundaries.
  2518. Before, an implementation might have had to parse all the variable
  2519. length tokens between each slice (thereby completing a significant
  2520. stage of decoding process in advance) to know the exact position of
  2521. each macroblock within the bitstream.  In MPEG-1, it was possible to
  2522. code a picture with only a single slice.  Naturally, the mandatory
  2523. slice per macroblock row restriction also facilitates error recovery.
  2524.  
  2525. MPEG-2 also added the concept of the slice_id.  This optional 6-bit
  2526. element signals which picture a particular slice belongs to.  In badly
  2527. mangled bitstreams, the location of the picture headers could become
  2528. garbled.  slice_id allows a decoder to place a slice in the proper
  2529. location within a sequence.  Other elements in the slice header, such
  2530. as slice_vertical_position, and the macroblock_address_increment of the
  2531. first macroblock in the slice uniquely identify the exact macroblock
  2532. position of the slice within the picture.  Thus within a window of 64
  2533. pictures, a lost slice can find its way.
  2534.  
  2535.  
  2536.  
  2537. Macroblock:
  2538. motion vectors are now always represented along a half-pel grid.  The
  2539. usefulness of an integer-pel grid (option in MPEG-1) diminished with
  2540. practice.  A intrinsic half-pel accuracy can encourage use by encoders
  2541. for the significant coding gain which half-pel interpolation offers.
  2542.  
  2543. In both MPEG-1 and MPEG-2, the dynamic range of motion vectors is
  2544. specified on a picture basis. A set of pictures corresponding to a
  2545. rapid motion scene may need a motion vector range of up to +/- 64
  2546. integer pixels.  A slower moving interval of pictures may need only a
  2547. +/- 16 range. Due to the syntax by which motion vectors are signaled in
  2548. a bitstream, pictures with little motion would suffer unnecessary bit
  2549. overhead in describing motion vectors in a coordinate system
  2550. established for a much wider range. MPEG-1s f_code picture header
  2551. element prescribed a radius shared by horizontal and vertical motion
  2552. vector components alike. It later became practice in industry to have a
  2553. greater horizontal search range (motion vector radius) than vertical,
  2554. since motion tends to be more prominent across the screen than up or
  2555. down (vertical).  Secondly, a decoder has a limited frame buffer size
  2556. in which to store both the current picture under decoding and the set
  2557. of pictures (forward, backward) used for prediction (reference) by
  2558. subsequent pictures.  A decoder can write over the pixels of the oldest
  2559. reference picture as soon as it no longer is needed by subsequent
  2560. pictures for prediction.  A restricted vertical motion vector range
  2561. creates a sliding window, which starts at the top of the reference
  2562. picture and moves down as the macroblocks in the current picture are
  2563. decoded in raster order.  The moment a strip of pixels passes outside
  2564. this window, they have ended their life in the MPEG decoding loop.  As
  2565. a result of all this, MPEG-2 created separate into horizontal and
  2566. vertical range specifiers (f_code[][0] for horizontal, and f_code[][1]
  2567. for vertical), and placed greater restrictions on the maximum vertical
  2568. range than on the horizontal range.  In Main Level frame pictures, this
  2569. is range is [- 128,+127.5] vertically, and [-1024,+1023.5]
  2570. horizontally. In field pictures, the vertical range is restricted to [-
  2571. 64,+63.5].
  2572.  
  2573. Macroblock stuffing is now illegal in MPEG-2.  The original intent
  2574. behind stuffing in MPEG-1 was to provide a means for finer rate control
  2575. adjustment at the macroblock layer.  Since no self-respecting encoder
  2576. would waste bits on such an element (it does not contribute to the
  2577. refinement of the reconstructed video signal), and since this unlimited
  2578. loop of stuffing variable length codes represent a significant headache
  2579. for hardware implementations which have a fixed window of time in which
  2580. to parse and decode a macroblock in a pipeline, the element was
  2581. eliminated in January 1993 from the MPEG-2 syntax.  Some feel that
  2582. macroblock stuffing was beneficial since it permitted macroblocks to be
  2583. coded along byte boundaries.  A good compromise could have been a
  2584. limited number of stuffs per macroblock.  If stuffing is needed for
  2585. purposes of rate control, an encoder can pad extra zero bytes before
  2586. the start code of the next slice. If stuffing is required in the last
  2587. row of macroblocks of the picture, the picture start code of the next
  2588. picture can be padded with an arbitrary number of bytes.  If the
  2589. picture happens to be the last in the sequence, the sequence_end_code
  2590. can be stuffed with zero bytes.
  2591.  
  2592. The dct_type flag in both Intra and non-Intra coded macroblocks of
  2593. frame structured pictures signals that the reconstructed samples output
  2594. by the IDCT stage shall be organized in field or frame order.   This
  2595. flag provides an encoder with a sort of poor mans motion_type by
  2596. adapting to the interparity (i.e. interfield) characteristics of the
  2597. macroblock without signaling a need for motion vectors via the
  2598. macroblock_type variable. dct_type plays an essential role in Intra
  2599. frame pictures by organizing lines of a common parity together when
  2600. there is significant interfield motion within the macroblock.  This
  2601. increases the decorrelation efficiency of the DCT stage.   For
  2602. non-intra macroblocks, dct_type organizes the 16 lines (... luminance,
  2603. 8 lines chrominance) of the macroblock prediction error. In combination
  2604. with motion_type, the meaning....
  2605.  
  2606.  
  2607. dct_type
  2608. motion_format
  2609. interpretation
  2610.  
  2611. frame
  2612. Intra coded
  2613. block data is frame correlated
  2614.  
  2615. field
  2616. Intra coded
  2617. block data is more strongly correlated along lines of 
  2618. opposite parity
  2619.  
  2620. frame
  2621. Field predicted
  2622. 1. a low-cost encoder which only possesses frame 
  2623. motion estimation may use dct_type to decorrelate 
  2624. the prediction error of a prediction which is 
  2625. inherently field by characteristic
  2626.  
  2627. 2. an intelligent encoder realizes that it is more bit 
  2628. efficient to signal frame prediction with field 
  2629. dct_type for the prediction error, than it is to signal 
  2630. a field prediction.
  2631.  
  2632. field
  2633. Field predicted
  2634. A typical scenario.  A field prediction tends to form a 
  2635. field-correlated prediction error.
  2636.  
  2637. frame
  2638. Frame predicted
  2639. A typical scenario.  A frame prediction tends to form a 
  2640. frame-correlated prediction error.
  2641.  
  2642. field
  2643. Frame predicted
  2644. Makes little sense. If the encoder went through the 
  2645. trouble of finding a field prediction in the first place, 
  2646. why select frame organization for the prediction error?
  2647.  
  2648.  
  2649. prediction modes now include field, frame, Dual Prime, and 16x8 MC.
  2650. The combinations for Main Profile and  Simple Profile are shown below.
  2651.  
  2652. Frame pictures
  2653. motion_type
  2654. motion 
  2655. vectors 
  2656. per MB
  2657. fundamental 
  2658. prediction block 
  2659. size (after half-
  2660. pel)
  2661. interpretation
  2662.  
  2663. Frame
  2664. 1
  2665. 16x16
  2666. same as MPEG-1, with possibly different 
  2667. treatment of prediction error via dct_type
  2668.  
  2669. Field
  2670. 2
  2671. 16x8
  2672. Two independently coded predictions are 
  2673. made: one for the 8 lines which correspond 
  2674. to the top field, another for the 8 bottom 
  2675. field lines.
  2676.  
  2677. Dual Prime
  2678. 1
  2679. 16x8
  2680. Two independently coded predictions are 
  2681. made: one for the 8 lines which correspond 
  2682. to the top field, another for the 8 bottom 
  2683. END ---------------------- CUT HERE --------------------- 2/8
  2684. Path: senator-bedfellow.mit.edu!bloom-beacon.mit.edu!gatech!news.mathworks.com!news2.near.net!howland.reston.ans.net!Germany.EU.net!netmbx.de!zrz.TU-Berlin.DE!fu-berlin.de!cs.tu-berlin.de!phade
  2685. From: phade@cs.tu-berlin.de (Frank Gadegast)
  2686. Newsgroups: comp.graphics,comp.graphics.animation,comp.compression,comp.multimedia,alt.binaries.multimedia,alt.binaries.pictures.utilities,alt.binaries.pictures,alt.binaries.pictures.d,alt.answers,comp.answers,news.answers
  2687. Subject: MPEG-FAQ: multimedia compression [3/8]
  2688. Followup-To: alt.binaries.multimedia
  2689. Date: 9 Jun 1995 10:59:09 GMT
  2690. Organization: Technical University of Berlin, Germany
  2691. Lines: 1306
  2692. Approved: news-answers-request@MIT.EDU
  2693. Expires: 31 Dec 1995 12:00:00 GMT
  2694. Message-ID: <3r99ht$2ni@news.cs.tu-berlin.de>
  2695. Reply-To: phade@cs.tu-berlin.de
  2696. NNTP-Posting-Host: benjamin.cs.tu-berlin.de
  2697. Mime-Version: 1.0
  2698. Content-Type: text/plain; charset=iso-8859-1
  2699. Content-Transfer-Encoding: 8bit
  2700. Summary: This is the summary about the ISO video and audioformats MPEG 1, 2 and 4
  2701. Keywords: MPEG, FAQ, Compression
  2702. Xref: senator-bedfellow.mit.edu comp.graphics:77875 comp.graphics.animation:20010 comp.compression:20436 comp.multimedia:36440 alt.binaries.multimedia:40193 alt.binaries.pictures.utilities:37031 alt.binaries.pictures:21186 alt.binaries.pictures.d:20799 alt.answers:9852 comp.answers:12385 news.answers:45905
  2703.  
  2704. Archive-name: mpeg-faq/part3
  2705. Last-modified: 1995/06/07
  2706. Version: v 4.0 95/06/07
  2707. Posting-Frequency: bimonthly
  2708. BEGIN -------------------- CUT HERE --------------------- 3/8
  2709. field lines.  Uses averaging of two 16x8 
  2710. prediction blocks from fields of opposite 
  2711. parity to form a prediction for the top and 
  2712. bottom 8 lines.  A second vector is derived 
  2713. from the first vector coded in the bitstream.
  2714.  
  2715.  
  2716.  
  2717. Field pictures
  2718. motion_type
  2719. motion 
  2720. vectors 
  2721. per MB
  2722. fundamental 
  2723. prediction block 
  2724. size (after half-
  2725. pel)
  2726. interpretation
  2727.  
  2728. Field
  2729. 1
  2730. 16x16
  2731. same as MPEG-1, with possibly different 
  2732. treatment of prediction error via dct_type
  2733.  
  2734. 16x8
  2735. 2
  2736. 16x8
  2737. Two independently coded predictions are 
  2738. made: one for the 8 lines which correspond 
  2739. to the top field, another for the 8 bottom 
  2740. field lines.
  2741.  
  2742. Dual Prime
  2743. 1
  2744. 16x16
  2745. A single prediction is constructed from the 
  2746. average of two 16x16 predictions taken from 
  2747. fields of opposite parity.
  2748.  
  2749.  
  2750.  
  2751. concealment motion vectors can be transmitted in the headers of intra
  2752. macroblocks to help error recovery.  When the macroblock data that the
  2753. concealment motion vectors are intended for becomes corrupt, these
  2754. vectors can be used to specify a concealment 16x16 area to be extracted
  2755. from the previous picture.  These vectors do not affect the normal
  2756. decoding process, except for motion vector predictions.
  2757.  
  2758. Additional chroma_format  for 4:2:2 and 4:4:4 pictures.  Like MPEG-1,
  2759. Main Profile syntax is strictly limited to 4:2:0 format, however, the
  2760. 4:2:2 format is the basis of the 4:2:2 Profile (aka Studio Profile).
  2761. In 4:2:2 mode, all syntax essentially remains the same except where
  2762. matters of block count are concerned.  A coded_block_pattern extension
  2763. was added to handle signaling of the extra two prediction error
  2764. blocks.  The 4:4:4 format is currently undefined in any Profile.
  2765.  
  2766. chroma_format
  2767. multiplex order within Macroblock
  2768. Application
  2769.  
  2770. 4:2:0  (6 blocks)
  2771. YYYYCbCr
  2772. main stream television, consumer entertainment.
  2773.  
  2774. 4:2:2  (8 blocks)
  2775. YYYYCbCrCbCr
  2776. studio production environments, professional 
  2777. editing equipment, distribution and servers
  2778.  
  2779. 4:4:4 (12 blocks)
  2780. YYYYCbCrCbCrCbCrCbCr
  2781. computer graphics
  2782.  
  2783.  
  2784.  
  2785. Non-linear macroblock quantization was introduced in MPEG-2 to increase
  2786. the precision of quantization at high bit rates, while increasing the
  2787. dynamic range for low bit rate use where  larger step size is needed.
  2788. The quantization_scale_code may be selected between a linear (MPEG-1
  2789. style) or non-linear scale on a picture (frame or field) basis. The new
  2790. non-linear range corresponds to a dynamic range of 0.5 to 54 with
  2791. respect to the linear (MPEG-1 style) range of 1 to 31.
  2792.  
  2793.  
  2794. Block:
  2795.  
  2796. alternate scan  introduced a new run-length entropy scanning pattern
  2797. generally more efficient for the statistics of interlaced video
  2798. signals. Zig-zag scan is the appropriate choice for progressive
  2799. pictures.
  2800.  
  2801. intra_dc_precision: the MPEG-1 DC value is mandatory quantized to a
  2802. precision of 8 bits.  MPEG-2 introduced 9, 10, and 11 bit precision set
  2803. on a picture basis to increase the accuracy of the DC component, which
  2804. by very nature, has the most significant contribution towards picture
  2805. quality.  Particularly useful at high bit rates to reduce
  2806. posterization. Main and Simple Profiles are limited to 8, 9, or 10 bits
  2807. of precision.  The 4:2:2 High Profile, which is geared towards higher
  2808. bitrate applications (up to 50 Mbits/sec), permits all values (up to 11
  2809. bits).
  2810.  
  2811. separate quantization matrices for Y and C: luminance (Y) and
  2812. chrominance (Cb,Cr) share a common intra and non-intra DCT coefficient
  2813. quantization 8x8 matrix in MPEG-1 and MPEG-2 Main and Simple Profiles.
  2814. The 4:2:2 Profile permits separate quantization matrices to be
  2815. downloaded for the luminance and chrominance blocks.  Cb and Cr still
  2816. share a common matrix.
  2817.  
  2818. intra_vlc_format:  one of two tables may now be selected at the picture
  2819. layer for variable length codes (VLCs) of AC run-length symbols in
  2820. Intra blocks.  The first table is identical to that specified for
  2821. MPEG-1 (dc_coef_next). The newer second table is more suited to the
  2822. statistics of Intra coded blocks, especially in I- frames.  The best
  2823. illustration between Table 0 and Table 1is the length of the symbol
  2824. which represents End of Block (EOB).  In Table zero, EOB is 2 bits.  In
  2825. Table one, it is 4 bits.  The implication is that the EOB symbol is
  2826. 2^-n probable within the block, or from an alternative perspective,
  2827. there are an average of 3 to 4 non-zero AC coefficients in Non-intra
  2828. blocks, and 9 to 16 coefficients in Intra blocks.  The VLC tree of
  2829. Table 1 was intended to be a subset of Table 0, to aid hardware
  2830. implementations.  Both tables have 113 VLC entries (or events).
  2831.  
  2832. escape: When no entry in the VLC exists for a AC Run-Level symbol, an
  2833. escape code can be used to represent the symbol. Since there are only
  2834. 63 positions within an 8x8 block following the first coefficient, and
  2835. the dynamic range of the quantized DCT coefficients is [-2047,+2048],
  2836. there are (63*2047), or 128,961 possible combinations of Run and Level
  2837. (the sign bit of the Level follows the VLC).  Only the 113 most common
  2838. Run-Level symbols are represented in Table 0 or Table 1.  The length of
  2839. the escape symbol (which is always 6 bits) plus the Run and Level
  2840. values in MPEG-1 could be 20 or 28 bits in length.  The 20 bit escape
  2841. describes levels in the range [-127,+127].  The 28 bit double escape
  2842. has a range of [-255, +255].  MPEG-2 increased the span to the full
  2843. dynamic range of quantized IDCT coefficients, [-2047, +2047] and
  2844. simplified the escape mechanism with a single representation for this
  2845. event.   The total length of the MPEG-2 escape codeword is 24 bits (6
  2846. bit VLC followed by a 6-bit Run value, and 12 bit Level value).  It was
  2847. an assumption by MPEG-1 designers that no quantized DCT coefficient
  2848. would need greater representation than 10 bits [-255,+255].  Note:
  2849. MPEG-2 escape mechanism does not permit the value -2048 to be
  2850. represented.
  2851.  
  2852. mismatch control:  The arithmetic results of all stages are defined
  2853. exactly by the normative MPEG decoding process, with the single
  2854. exception of the Inverse Discrete Cosine Transform (IDCT). This stage
  2855. can be implemented with a wide variety of IDCT implementations.  Some
  2856. are more suited for software, others for programmable hardware, and
  2857. others still for hardwired hardware designs. The IDCT reference formula
  2858. in the MPEG specification would, if directly implemented, consume at
  2859. least 1024 multiply and 1024 addition operations for every block. A
  2860. wide variety of fast algorithms exist which can reduce the count to
  2861. less than 200 multiplies and 500 adds per block by exploiting the
  2862. innate symmetry of the cosine basis functions. A typical fast IDCT
  2863. algorithm would be dwarfed by the cost of the other decoder stages
  2864. combined. Each fast IDCT algorithm has different quantization error
  2865. statistics (fingerprint), although subtle when the precision of the
  2866. arithmetic is, for example, at least 16-bits for the transform
  2867. coefficients and 24-bits for intermediate dot product values.
  2868. Therefore, MPEG cannot standardize a single fast IDCT algorithm. The
  2869. accuracy can be defined only statistically.  The IEEE 1180
  2870. recommendation (December 1990) defines the error tolerance between an
  2871. ideal direct-matrix floating point implementation (a direct
  2872. implementation of the MPEG reference formula) and the test IDCT.
  2873.  
  2874. Mismatch control attempts to reduce the drift between different IDCT
  2875. algorithms by eliminating bit patterns which statistically have the
  2876. greatest contribution towards mismatches between the variety of
  2877. methods. The reconstructions of two decoders will begin to diverge over
  2878. time since their respective IDCT designs will reconstruct occasional,
  2879. slightly different 8x8 blocks.
  2880.  
  2881. MPEG-1s mismatch control method is known canonicially as Oddification,
  2882. since it forces all quantized DCT coefficients to negative values. It
  2883. is a slight improvement over its predecessor in H.261.  MPEG-2 adopted
  2884. a different method called, again canonically, LSB Toggling, further
  2885. reducing the likelihood of mismatch. Toggling affects only the Least
  2886. Significant Bit (LSB) of the 63rd AC DCT coefficient (the highest
  2887. frequency in the DCT matrix).  Another significant difference between
  2888. MPEG-1 and MPEG-2 mismatch control is, in MPEG-1, oddification is
  2889. performed on the quantized DCT coefficients, whereas in MPEG-2,
  2890. toggling is performed on the DCT coefficients after inverse
  2891. quantization.  MPEG-1s mismatch control method favors programmable
  2892. implementation since a block of DCT coefficients when quantized.
  2893.  
  2894. Sample:
  2895. The two chrominace pictures (Cb, Cr) possess only half the resolution
  2896. in both the horizontal and vertical direction as the luminance picture
  2897. (Y).  This is the definition of the 4:2:0 chroma format. Most
  2898. television displays require that at least the vertical chrominance
  2899. resolution matches the luminance (4:2:2 chroma format). Computer
  2900. displays may further still demand that the horizontal resolution also
  2901. be equivalent (4:4:4 chroma format). There are a variety of filtering
  2902. methods for interpolating the chrominance samples to match the sample
  2903. density of luminance. However, the official location or center of the
  2904. lower resolution chrominance sample should influence the filter design
  2905. (relative taps weights), otherwise the chrominance plane can appear to
  2906. be shifted by a fractional sample in the wrong direction.
  2907.  
  2908. The subsampled MPEG-1 chroma position has a center exactly half way
  2909. between the four nearest neighboring luminance samples.  To be
  2910. consistent with the subsampled chrominance positions of 4:2:2
  2911. television signals, MPEG-2 moved the center of the chrominance samples
  2912. to be co-located horizontally with the luminance samples.
  2913.  
  2914.  
  2915. Misc.:
  2916.  
  2917. copyright_id extension can identify whether a sequence or subset of
  2918. frames within the sequence is copyrighted, and provides a unique 64-bit
  2919. copyright_id_number registered with the ISO/IEC.
  2920.  
  2921. Syntax can now signal frame sizes as large as 16383 x 16383. Since
  2922. MPEG-1 employed a meager 12-bits to describe horizontal_size and
  2923. vertical_size , the range was limited to 4095x4095.  However, MPEGs
  2924. Levels prescribe important interoperability points for practical
  2925. decoders. Constrained Parameters MPEG-1 and MPEG-2 Low Level limit the
  2926. sample rate to 352x240x30 Hz.  MPEG-2s Main Level defines the limit at
  2927. 720x480x30 Hz. Of course, this is simply the restriction of the dot
  2928. product of horizontal_size, vertical_size, and frame_rate. The Level
  2929. also places separate restrictions on each of the these three
  2930. variables.
  2931.  
  2932. Reflecting the more television oriented manner of MPEG-2, the optional
  2933. sequence_display_extension() header can specify the chromaticy of the
  2934. source video signal as it was prior to representation by MPEG syntax.
  2935. This information includes: whether the original video_format was
  2936. composite or component, the opto-electronic transfer_characteristics,
  2937. and RGB->YCbCr matrix_coefficients. The picture_display_extension()
  2938. provides more localized source composite video characteristics on a
  2939. frame by frame basis (not field-by-field), with the syntax elements:
  2940. field_sequence, sub_carrier_phase, and burst_amplitude.  This
  2941. information can be used by the displays post-processing stage to
  2942. reproduce a more refined display sequence.
  2943.  
  2944. Optional pan & scan syntax was introduced which tells a decoder on a
  2945. frame-by-frame basis how to, for example, window a 4:3 image within the
  2946. wider 16:9 aspect ratio of the coded frame.  The vertical pan offset
  2947. can be specified to within 1/16th pixel accuracy.
  2948.  
  2949. <IMG SRC="mpeg2pan.gif">
  2950.  
  2951.  
  2952. How does MPEG syntax facilitate parallelism ?
  2953.  
  2954. For MPEG-1, slices may consist of an arbitrary number of macroblocks.
  2955. They can be independently decoded once the picture header side
  2956. information is known. For parallelism below the slice level, the coded
  2957. bitstream must first be mapped into fixed-length elements.  Further,
  2958. since macroblocks have coding dependencies on previous macroblocks
  2959. within the same slice, the data hierarchy must be pre-processed down to
  2960. the layer of DC DCT coefficients.  After this, blocks may be
  2961. independently inverse transformed and quantized, temporally predicted,
  2962. and reconstructed to buffer memory.  Parallelism is usually more of a
  2963. concern for encoders.  In many encoders today, block matching (motion
  2964. estimation) and some rate control stages (such as activity and/or
  2965. complexity measures) are processed for macroblocks independently.
  2966. Finally, with the exception that all macroblock rows in Main Profile
  2967. MPEG-2 bitstreams must contain at least one slice, an encoder has the
  2968. freedom to choose the slice structure.
  2969.  
  2970. What is the MPEG color space and sample precision?
  2971.  
  2972. MPEG strictly specifies the YCbCr color space, not YUV or YIQ or YPbPr
  2973. or YDrDb or any other many fine varieties of color difference spaces.
  2974. Regardless of any bitstream parameters, MPEG-1 and MPEG-2 Video Main
  2975. Profile specify the 4:2:0 chroma_format, where the color difference
  2976. channels (Cb, Cr) have half the "resolution" or sample grid density in
  2977. both the horizontal and vertical direction with respect to luminance.
  2978.  
  2979. MPEG-2 High Profile includes an option for 4:2:2 chroma_format, as does
  2980. the MPEG 4:2:2 Profile (a.k.a.  Studio Profile) naturally. Applications
  2981. for the 4:2:2 format can be found in professional broadcasting,
  2982. editing,  and contribution-quality distribution environments.  The
  2983. drawback of the 4:2:2 format is simply that it increases the size of
  2984. the macroblock from six 8x8 blocks (4:2:0) to eight, while increasing
  2985. the frame buffer size and decoding bandwidth by the same amount (33
  2986. %).  This increase places the buffering memories well past the magic
  2987. 16-Mbit limit for semiconductor DRAM devices, assuming the pictures are
  2988. stored with a maximum of  414,720 pixels (720 pixels/line x 576
  2989. lines/frame).  The maximum allowable pixel resolution could be reduced
  2990. by 1/3 to compensate (e.g. 544 x 576). However, if a hardware decoders
  2991. operate on a macroblock basis in the pipeline, on-chip static memories
  2992. (SRAM) will increase by 1/3.  The benefits offered by 1/3 more pixels
  2993. generally outweighs full vertical chrominance resolution. Other
  2994. arguments favoring 4:2:0 over 4:2:2 include:
  2995.  
  2996.   Vertical decimation increases compression efficiency by reducing
  2997.   syntax overhead posed in an 8 block (4:2:2) macroblock structure.
  2998.  
  2999.   You're compressing the hell out of the video signal, so what possible
  3000.   difference can the 0:0:2 chromiance high-pass make?
  3001.  
  3002. Is 4:2:0 the same as 4:1:1 ?
  3003.  
  3004. No, no, definitely no.  The following table illustrates the nuances
  3005. between the different chroma formats for a frame with pixel dimensions
  3006. of 720 pixels/line x 480 lines/frame.
  3007.  
  3008. CCIR 601 (60 Hz) image          Chroma sub-sampling factors
  3009. format  Y               Cb, Cr  Vertical        Horizontal
  3010.  
  3011.  
  3012. chroma 
  3013. format
  3014. pixels/
  3015. line
  3016. Y
  3017. lines/
  3018. frame
  3019. Y
  3020. pixels/
  3021. line
  3022. Cb, Cr
  3023. lines/
  3024. frame
  3025. Cb, Cr
  3026. horizontal 
  3027. subsampling 
  3028. factor
  3029. vertical 
  3030. subsampling 
  3031. factor
  3032.  
  3033. 4:4:4
  3034. 720
  3035. 480
  3036. 720
  3037. 480
  3038. none
  3039. none
  3040.  
  3041. 4:2:2
  3042. 720
  3043. 480
  3044. 360
  3045. 480
  3046. 2:1
  3047. none
  3048.  
  3049. 4:2:0
  3050. 720
  3051. 480
  3052. 360
  3053. 240
  3054. 2:1
  3055. 2:1
  3056.  
  3057. 4:1:1
  3058. 720
  3059. 480
  3060. 180
  3061. 480
  3062. 4:1
  3063. none
  3064.  
  3065. 4:1:0
  3066. 720
  3067. 480
  3068. 180
  3069. 120
  3070. 4:1
  3071. 4:1
  3072.  
  3073.  
  3074. 3:2:2, 3:1:1, and 3:1:0 are less common variations, but have been
  3075. documented.  As shocking as it may seem, the 4:1:0 ratio was used by
  3076. Intels DVI for several years.
  3077.  
  3078. The 130 microsecond gap between successive 4:2:0 lines in progressive
  3079. frames, and 260 microsecond gap in interlaced frames, can introduce
  3080. some difficult vertical frequencies, but most can be alleviated through
  3081. pre- processing.
  3082.  
  3083. What is the sample precision of MPEG ?  How many colors 
  3084. can MPEG represent ?
  3085.  
  3086. By definition, MPEG samples have no more and no less than 8-bits
  3087. uniform sample precision (256 quantization levels).  For luminance
  3088. (which is unsigned) data, black corresponds to level 0, white is level
  3089. 255.  However, in CCIR recommendation 601 chromaticy, luminance (Y)
  3090. levels 0 through 14 and 236 through 255 are reserved for blanking
  3091. signal excursions. MPEG currently has no such clipped excursion
  3092. restrictions, although decoder might take care to insure active samples
  3093. do not exceed these limits.  With three color components per pixel, the
  3094. total combination is roughly 16.8 million colors (i.e. 24-bits).
  3095.  
  3096.  
  3097. How are the subsampled chroma samples cited ?
  3098.  
  3099.  
  3100. It is moderately important to properly co-site chroma samples,
  3101. otherwise a sort of chroma shifting effect (exhibited as a halo) may
  3102. result when the reconstructed video is displayed.  In MPEG-1 video, the
  3103. chroma samples are exactly centered between the 4 luminance samples
  3104. (Fig 1.)   To maintain compatibility with the CCIR 601 horizontal
  3105. chroma locations and simplify implementation (eliminate need for phase
  3106. shift), MPEG-2 chroma samples are arranged as per Fig.2.
  3107.  
  3108.   Y   Y   Y   Y             Y   Y   Y   Y            YC  Y   YC  Y
  3109.    C       C                C         C
  3110.   Y   Y   X   Y             Y   Y   Y   Y            YC  Y   YC  Y
  3111.  
  3112.   Y   Y   Y   Y             Y   Y   Y   Y            YC  Y   YC  Y
  3113.     C       C               C         C
  3114.   Y   Y   Y   Y             Y   Y   Y   Y            YC  Y   YC  Y
  3115.  
  3116.   Fig.1 MPEG-1               Fig.2  MPEG-2           Fig.3 MPEG-2 and 
  3117.  4:2:0 organization         4:2:0 organization         CCIR Rec. 601
  3118.                                                      4:2:2 organization
  3119.  
  3120.  
  3121. How do you tell an MPEG-1 bitstream from an MPEG-2 
  3122. bitstream ?
  3123.  
  3124. A. All MPEG-2 bitstreams must contain specific extension headers that
  3125. immediately follow MPEG-1 headers.  At the highest layer, for example,
  3126. the MPEG-1 style sequence_header() is followed by sequence_extension().
  3127. Some extension headers are specific to MPEG-2 profiles.  For example,
  3128. sequence_scalable_extension()  is not allowed in Main Profile
  3129. bitstreams.
  3130.  
  3131. A simple program need only scan the coded bitstream for byte-aligned
  3132. start codes to determine whether the stream is MPEG-1 or MPEG-2.
  3133.  
  3134. What are start codes? 
  3135.  
  3136. These 32-bit byte-aligned codes provide a mechanism for cheaply
  3137. searching coded bitstreams for commencement of various layers of video
  3138. without having to actually parse variable-length codes or perform any
  3139. decoder arithmetic.  Start codes also provide a mechanism for
  3140. resynchronization in the presence of bit errors.  A start code may be
  3141. preceded by an arbitrary number of zero bytes.  The zero bytes can be
  3142. use to guarantee that a start code occurs within a certain location, or
  3143. by rate control to increase the bitrate of a coded bitstream.
  3144.  
  3145. Coded block pattern 
  3146.  
  3147.  Coded block pattern:
  3148. (CBP --not to be confused with Constrained Parameters!)  When the frame
  3149. prediction is particularly good, the displaced frame difference(DFD, or
  3150. temporal macroblock prediction error) tends to be small, often with
  3151. entire block energy being reduced to zero after quantization.  This
  3152. usually happens only at low bit rates.  Coded block patterns prevent
  3153. the need for transmitting EOB symbols in those zero coded blocks.
  3154. Coded block patterns are transmitted in the macroblock header only if
  3155. the macrobock_type flag indicates so.
  3156.  
  3157. Why is the DC value always divided by 8 ?
  3158.  
  3159. Clarification point: The DC value of Intra coded blocks is quantized by
  3160. a constant stepsize of 8 only in MPEG-1, rendering the 11-bit dynamic
  3161. range of the IDCT DC coefficient to 8-bits of accuracy. MPEG-2 allows
  3162. for DC precision of 8, 9, 10, or 11 bits.  The quantization stepsize is
  3163. fixed for the duration of the picture, set by the intra_dc_precision
  3164. flag in the picture_extension_header().
  3165.  
  3166. Why is there a special VLC for  DCT_coefficient_first:?
  3167.  
  3168. Since the coded_block_pattern in NON-INTRA macroblocks signals every
  3169. possible combination of all-zero valued and non-zero blocks, the
  3170. dct_coef_first mechanism assigns a different meaning to the VLC
  3171. codeword (run = 0, level =+/- 1) that would otherwise represent EOB
  3172. (10) as the first coefficient in the zig-zag ordered Run-Level token
  3173. list.
  3174.  
  3175. What's the deal with  End of Block ?
  3176.  
  3177. Saves unnecessary run-length codes.  At optimal bitrates, there tends
  3178. to be few AC coefficients concentrated in the early stages of the
  3179. zig-zag vector. In MPEG-1, the 2-bit length of EOB implies that there
  3180. is an average of only 3 or 4 non-zero AC coefficients per block.  In
  3181. MPEG-2 Intra (I) pictures, with a 4-bit EOB code in Table 1, this
  3182. estimate is between 9 and 16 coefficients. Since EOB is required for
  3183. all coded blocks, its absence can signal that a syntax error has
  3184. occurred in the bitstream.
  3185.  
  3186. What's  this "Macroblock stuffing," dammit ?:
  3187.  
  3188. A genuine pain for VLSI implementations, macroblock stuffing was
  3189. included in MPEG-1 to maintain smoother, constant bitrate control for
  3190. encoders.  However, with normalized complexity/activity measures and
  3191. buffer management performed a priori (before coding of the macroblock,
  3192. for example) and local monitoring of coded data buffer levels now a
  3193. common operation in encoders, (e.g. MPEG-2 encoder Test Model), the
  3194. need for such localized bitrate smoothing evaporated. Stuffing can be
  3195. achieved through slice start code padding if required. A good rule of
  3196. thumb is: if you find often yourself wishing for stuffing more than
  3197. once per slice, you probably don't have a very good rate control
  3198. algorithm.  Nonetheless, to avoid any temptation, macroblock stuffing
  3199. is now illegal in MPEG-2  (A general syntax restriction brought to you
  3200. by the Implementation Studies Subgroup!)
  3201.  
  3202. What's the deal with slice_vertical_position and 
  3203. macroblock_address_increment?
  3204.  
  3205. The absolute position of the first macroblock within a slice is known
  3206. by the combination of slice_vertical_position and the
  3207. macroblock_address_increment.  Therefore, the proper place of a lost
  3208. slice found in a highly corrupt bitstream can be located exactly within
  3209. the picture.  These two syntax elements are also the only known means
  3210. of detecting slice gaps----areas of the picture which are not
  3211. represented with any information (including skipped macroblocks).  A
  3212. slice gap occurs when the current macroblock address of the first
  3213. macroblock in a slice is greater than the previous macroblock address
  3214. by more than 1 macroblock unit. A slice overlap occurs when the current
  3215. macroblock address is less than or equal to the previous macroblocks
  3216. address.  The previous macroblock in both instances is the last known
  3217. macroblock within the previous slice. Because of the semantic
  3218. interpretation of slice gaps and overlaps, and because of the syntactic
  3219. restrictions for slice_vertical_position and
  3220. macroblock_address_increment, it is not syntactically possible for a
  3221. skipped macroblock to be represented in the first and last positions of
  3222. a slice.  In the past, some (bad) encoders would attempt to signal a
  3223. run of skipped macroblocks to the end of the slice. These evil skipped
  3224. macroblocks should be interpreted by a compliant decoder as a gap, not
  3225. as a string of skipped macroblocks.
  3226.  
  3227. What is meant by modified Huffman VLC tables:
  3228.  
  3229. The VLC tables in MPEG are not Huffman tables in the true sense of
  3230. Huffman coding, but are more like the tables used in Group 3 fax. They
  3231. are entropy constrained, that is, non-downloadable and optimized for a
  3232. limited range of bit rates (sweet spots).  A better way would be to say
  3233. that the tables are optimized for a range of ratios of bit rate to
  3234. sample rate (e.g. 0.25 bits/pixel to 1.0 bits/pixel). With the
  3235. exception of a few codewords, the larger tables were carried over from
  3236. the H.261 standard drafted in the year 1990. This includes the AC
  3237. run-level symbols, coded_block_pattern, and macroblock_address_increment.  
  3238. MPEG-2 added an "Intra table," also called "Table 1".  Note that the
  3239. dct_coefficient tables assume positive/negative coefficient PMF
  3240. symmetry.
  3241.  
  3242.  
  3243. How does MPEG handle 3:2 pulldown?
  3244.  
  3245. MPEG-1 video decoders had to decide for themselves when to perform 3:2
  3246. pulldown if it was not indicated in the presentation time stamps (PTS)
  3247. of the Systems layer bitstream.  MPEG-2 provides two flags
  3248. (repeat_first_field, and top_field_first) which explicitly describe
  3249. whether a frame or field is to be repeated. In progressive sequences,
  3250. frames can be repeated 2 or 3 times.  Simple and Main Profile limit are
  3251. limited to repeated fields only.  It is a general syntactic restriction
  3252. that repeat_first_field can only be signaled (value ==1) in a frame
  3253. structured picture.  It makes little sense to repeat field pictures in
  3254. an interlaced video signal since the whole process of 3:2 pulldown
  3255. conversion was meant to convert progressive, film sequences to the
  3256. display frame rate of interlaced television.
  3257.  
  3258. In the most common scenario, a film sequence will contain 24 frames
  3259. every second.  The bit_rate element in the sequence header will
  3260. indicate 30 frames/sec, however.  On average, every other coded frame
  3261. will signal a repeat field (repeat_first_field==1) to pad the frame
  3262. rate from 24 Hz to 30 Hz:
  3263.  
  3264.  
  3265. (24 coded frames/sec)*(2 fields/coded frame)*(5 display fields/4 coded
  3266.   fields) = 30 display frames/sec
  3267.  
  3268.  
  3269. After all this standardization, what's left for research?
  3270.  
  3271.  
  3272. A . Despite the fact that a comprehensive worldwide standard now exists
  3273. for digital video, many areas remain wide open for research:  advanced
  3274. encoding and pre-processing, motion estimation, macroblock decision
  3275. models, rate control and buffer management in editing environments,
  3276. implementation complexity reduction, etc. Many areas have yet to be
  3277. solved ... (and discovered)..
  3278.  
  3279. Are some encoders better than others ?
  3280.  
  3281. A. Definitely. For example, the motion estimation search range of a
  3282. has  great influence over final picture quality.  At a certain point a
  3283. very large range can actually become detrimental (it may encourage
  3284. large differential motion vectors). Practical ranges are usually
  3285. between  +/- 15 and +/- 32.  As the range doubles, for instance, the
  3286. search area quadruples. (like the classic relationship between in
  3287. increase in linear vs. area).
  3288.  
  3289. Rate control marks a second tell-tale area where some encoders perform
  3290. significantly better than others.
  3291.  
  3292. And finally, the degree of "pre-processing" (now a popular buzzword in
  3293. the business) signals that the encoder belongs to an elite marketing
  3294. class.
  3295.  
  3296.  
  3297. Is the encoder standardized ?
  3298.  
  3299. A. The encoder rests just outside the normative scope of the standard,
  3300. as long as the bitstreams it produces are compliant.  The decoder,
  3301. however, is almost deterministic: a given bitstream should reconstruct
  3302. to a unique set of pictures. However, since the IDCT  function is the
  3303. ONLY non-normative stage in the decoder, an occasional error of a Least
  3304. Significant Bit per prediction iteration is permitted. The designer is
  3305. free to choose among many DCT algorithms and implementations.  The IEEE
  3306. 1180 test referenced in Annex A of the MPEG-1 (ISO/IEC 11172-2) and
  3307. MPEG-2 (ISO/IEC 13818-2) Video specifications spells out the
  3308. statistical mismatch tolerance between the Reference IDCT, which is a
  3309. separable 8x1 "Direct Matrix" DCT implemented with 64-bit floating
  3310. point accuracy, and the IDCT you are testing for compliance.
  3311.  
  3312.  
  3313. What is the TM (Test Model) ?
  3314. What is the TM rate control and adaptive quantization technique ?
  3315.  
  3316. A. The Test model (MPEG-2) and Simulation Model (MPEG-1) were not, by
  3317. any stretch of the imagination, meant to epitomize state-of-the art
  3318. encoding quality.  They were, however, designed to exercise the syntax,
  3319. verify proposals, and test the relative compression performance of
  3320. proposals in a timely manner that could be duplicated by
  3321. co-experimenters.  Without simplicity, there would have been no doubt
  3322. endless debates over model interpretation.  Regardless of all else,
  3323. more advanced techniques would probably trespass into proprietary
  3324. territory.
  3325.  
  3326. The final test model for MPEG-2 is TM version 5b, a.k.a. TM version 6,
  3327. produced in March 1993 (the time when the MPEG-2 video syntax was
  3328. frozen). The final MPEG-1 simulation model is version 3 (SM-3).  The
  3329. MPEG-2 TM rate control method offers a dramatic improvement over the SM
  3330. method.  TM adds more accurate estimation of macroblock complexity
  3331. through use of limited  a priori information. Macroblock quantization
  3332. adjustments are computed on a macroblock basis, instead of
  3333. once-per-macroblock row (which in the SM-3 case consisted of an entire
  3334. slice).
  3335.  
  3336. How does the TM work?
  3337.  
  3338. Rate control and adaptive quantization are divided into three steps:
  3339.  
  3340. Step One: Target Bit Allocation
  3341.  
  3342. In Complexity Estimation, the global complexity measures assign
  3343. relative weights to each picture type (I,P,B).  These weights (Xi, Xp,
  3344. Xb) are reflected by the typical coded frame size of I, P, and B
  3345. pictures (see typical frame size discussion). I pictures are usually
  3346. assigned the largest weight since they have the greatest stability
  3347. factor in an image sequence and contain the most new information in a
  3348. sequence.  B pictures are assigned the smallest weight since B energy
  3349. do not propagate into other pictures and are usually more highly
  3350. correlated with neighboring P and I pictures than P pictures are.
  3351.  
  3352. The bit target for a frame is based on  the frame type, the remaining
  3353. number of bits left in the Group of Pictures (GOP) allocation, and the
  3354. immediate statistical history of previously coded pictures (sort of a
  3355. moving average global rate control, if you will).
  3356.  
  3357. Step Two:       Rate Control via Buffer Monitoring
  3358.  
  3359. Rate control attempts to adjust bit allocation if there is significant
  3360. difference between the target bits (anticipated bits) and actual coded
  3361. bits for a block of data.  If the virtual buffer begins to overflow,
  3362. the macroblock quantization step size is increased, resulting in a
  3363. smaller yield of coded bits in subsequent macroblocks. Likewise, if
  3364. underflow begins, the step size is decreased.   The Test Model
  3365. approximates that the target picture has spatially uniform distribution
  3366. of bits.  This is a safe approximation since spatial activity and
  3367. perceived quantization noise are almost inversely proportional.  Of
  3368. course, the user is free to design a custom distribution,  perhaps
  3369. targeting more bits in areas that contain more complex yet highly
  3370. perceptible data such as text.
  3371.  
  3372. Step Three:     Adaptive Quantization
  3373.  
  3374. The final step modulates the macroblock quantization step size obtained
  3375. in Step 2 by a local activity measure. The activity measure itself is
  3376. normalized against the most recently coded picture of the same type (I,
  3377. P, or B). The activity for a macroblock is chosen as the minimum among
  3378. the four 8x8 block luminance variances.  Choosing the minimum block is
  3379. part of the concept that a macroblock is no better than the block of
  3380. highest visible distortion (weakest link in the chain).
  3381.  
  3382. Decision:
  3383. [deferred to later date]
  3384.  
  3385. Can motion vectors be used to determine object velocity?
  3386.  
  3387. Motion vector information cannot be reliably used as a means of
  3388. determining object velocity unless the encoder model specifically set
  3389. out to do so.  First, encoder models that optimize picture quality
  3390. generate vectors that typically minimize prediction error and,
  3391. consequently, the vectors often do not represent true object
  3392. translation from picture-to-picture.  Standards converters that
  3393. resample one frame rate to another (as in NTSC to PAL) use different
  3394. methods (motion vector field estimation, edge detection, et al) that
  3395. are not concerned with Rate-Distortion theory. Second, motion vectors
  3396. are not transmitted for all macroblocks anyway.
  3397.  
  3398. Is it possible to code interlaced video with MPEG-1 syntax?
  3399.  
  3400. A. Two methods can be applied to interlaced video that maintain
  3401. syntactic compatibility with MPEG-1 (which was originally designed for
  3402. progressive frames only).  In the field concatenation method, the
  3403. encoder model can carefully construct predictions and prediction errors
  3404. that realize good compression but maintain field integrity (distinction
  3405. between adjacent fields of opposite parity). Some pre-processing
  3406. techniques can also be applied to the interlaced source video that
  3407. would, e.g., lessen sharp vertical frequencies.
  3408.  
  3409. This technique is not terribly efficient of course.  On the other hand,
  3410. if the original source was progressive (e.g. film), then it is more
  3411. trivial to convert the interlaced source to a progressive format before
  3412. encoding.  (MPEG-2 would then only offer slightly superior performance
  3413. through such MPEG-2 enhancements as greater DC coefficient precision,
  3414. non-linear mquant, intra VLC, etc.) Reconstructed frames are usually
  3415. re- interlaced in the Display process following the decoding stages.
  3416.  
  3417. The second syntactically compatible method codes fields as separate
  3418. pictures. Rumors have spread that this approach does not quiet work
  3419. nearly as well as the pretend its really a frame method.
  3420.  
  3421. Can MPEG be used to code still frames ?
  3422.  
  3423. Yes.  MPEG Intra pictures are similar to baseline sequential JPEG pictures.
  3424.  
  3425. There are, of course, advantages and disadvantages to using MPEG over
  3426. JPEG to represent still pictures.
  3427.  
  3428. Disadvantages:
  3429.  
  3430. 1. MPEG has only one color space (YCbCr)
  3431.  
  3432. 2. MPEG-1 and MPEG-2 Main Profile luma and chroma share quanitzation
  3433. and VLC tables (4:2:0 chroma_format)
  3434.  
  3435. 3. MPEG-1 is syntactically limited to 4k x 4k images, and 16k x 16k for MPEG-2.
  3436.  
  3437. Advantages:
  3438.  
  3439. 1. MPEG possesses adaptive quantization which permits better rate
  3440. control and spatial masking.
  3441.  
  3442. 2. With its limited still image syntax,  MPEG averts any temptation to
  3443. use unnecessary, expensive, and academic encoding methods that have
  3444. little impact on the overall picture quality (you know who you are).
  3445.  
  3446. 3. Philips' CD-I spec. has a requirement for a MPEG still frame mode,
  3447. with double SIF image resolution.  This is technically feasible mostly
  3448. thanks to the fact that only one picture buffer is needed to decode a
  3449. still image instead of the 2.5 to 3 buffers needed for IPB sequences.
  3450.  
  3451.  
  3452. Why was the 8x8 DCT size chosen?
  3453.  
  3454.  A. Experiments showed little compaction gains could be achieved with
  3455.  larger transform sizes, especially in light of the increased
  3456. implementation complexity. A fast DCT algorithm will require roughly
  3457. double the number of arithmetic operations per sample when the linear
  3458. transform point size is doubled. Naturally, the best compaction
  3459. efficiency has been demonstrated using locally adaptive block sizes
  3460. (e.g. 16x16, 16x8,  8x8, 8x4, and 4x4) [See Gary Sullivan and Rich
  3461. Baker "Efficient Quadtree  Coding of Images and Video," ICASSP 91, pp
  3462. 2661-2664.].
  3463.  
  3464. Inevitably, adaptive block transformation sizes introduce additional
  3465. side information overhead while forcing the decoder to implement
  3466. programmable or hardwired recursive  DCT algorithms. If the DCT size
  3467. becomes too large, then more edges (local discontinuities) and the like
  3468. become absorbed into the transform block, resulting in wider
  3469. propagation of Gibbs (ringing) and other unpleasant phenomena.
  3470. Finally, with larger transform sizes, the DC term is  even more
  3471. critically sensitive to quantization noise.
  3472.  
  3473. Why was the 16x16 prediction size chosen?
  3474.  
  3475. The 16x16 area corresponds to the Least Common Multiple (LCM) of 8x8
  3476. blocks, given the normative 4:2:0 chroma ratio. Starting with medium
  3477. size images, the 16x16 area provides a good balance between side
  3478. information overhead & complexity and motion compensated prediction
  3479. accuracy.  In gist, experiments showed that the 16x16 was a good
  3480. trade-off between complexity and coding efficiency.
  3481.  
  3482. What do B-pictures buy you?
  3483.  
  3484. A. Since bi-directional macroblock predictions are an average of two
  3485. macroblock areas, noise is reduced at low bit rates (like a 3-D filter,
  3486. if you will).  At nominal MPEG-1 video (352 x 240 x 30, 1.15 Mbit/sec)
  3487. rates, it is said that B-frames improves SNR by as much as 2 dB. (0.5
  3488. dB gain is usually considered worth-while in MPEG). However, at higher
  3489. bit rates, B- frames become less useful since they inherently do not
  3490. contribute to the  progressive refinement of an image sequence (i.e.
  3491. not used as prediction by subsequent coded frames).  Regardless,
  3492. B-frames are still politically controversial.
  3493.  
  3494. B pictures are interpolative in two ways: 1. predictions in the
  3495. bi-directional macroblocks are an average from block areas of two
  3496. pictures 2. B pictures "fill in" like a digital spackle the immediate
  3497. 3-D video signal without contributing to the overall signal quality
  3498. beyond that immediate point in time.  In other words, a B picture,
  3499. regardless of its internal make-up of macroblock types, has a life
  3500. limited only to itself.  As mentioned before, B picture energy does not
  3501. propagate into other frames.  In a sense, bits spent on B pictures are
  3502. wasted.
  3503.  
  3504. Why do some people hate B-frames?
  3505.  
  3506. A. Computational complexity, bandwidth, end-to-end delay, and picture
  3507. buffer size are the four B-frame Pet Peeves. Computational complexity
  3508. in the decoder is  increased since some macroblock modes require
  3509. averaging between two block predictions (macroblock_motion_forward==1
  3510. && macroblock_motion_backward==1).
  3511.  
  3512. Worst case, memory bandwidth is increased an extra 15.2 MByte/s
  3513. (assuming 4:2:0 chroma_format at Main Level), not including any half
  3514. pel or page-mode overhead) for this extra directional prediction. To
  3515. really rub it in, an extra picture buffer is needed to store the future
  3516. reference picture (backwards prediction frame).  Finally, an extra
  3517. picture delay is introduced in the decoder since the frame used for
  3518. backwards prediction needs to be transmitted to the decoder and
  3519. reconstructed before the intermediate B-pictures in display order can
  3520. be decoded.
  3521.  
  3522. Cable television have been particularly adverse to B-frames since, for
  3523. CCIR 601 rate video, the extra picture buffer pushes the decoder DRAM
  3524. memory requirements past the magic 8- Mbit (1 Mbyte) threshold into the
  3525. evil realm of 16 Mbits (2 Mbyte).---- although 8-Mbits is fine for 352
  3526. x 480 B picture sequence. However, cable often forgets that DRAM does
  3527. not come in convenient high-volume (low cost) 8- Mbit packages as does
  3528. friendly 4-Mbit and 16-Mbit packages.  In a few years, the cost
  3529. difference between 16 Mbit and 8 Mbit will become insignificant
  3530. compared to the bandwidth savings gain through higher compression.  For
  3531. the time being, some cable boxes will start with 8-Mbit and allow
  3532. future drop-in upgrades to the full 16-Mbit.
  3533.  
  3534.  
  3535. How are interlaced and progressive pictures indicated in 
  3536. MPEG?
  3537.  
  3538. The following tree may help illustrate the possible layers of
  3539. progressive and interlaced coding modes:
  3540.  
  3541.  
  3542.  
  3543.           MPEG-2 sequence
  3544.          /               \
  3545.   progressive            interlaced sequence
  3546.   sequence                 /            \
  3547.                    Field picture        Frame picture
  3548.                                         /         \
  3549.                                        /           \
  3550.                  Frame or field prediction     Frame MB prediction only
  3551.                    /               \
  3552.                Field dct           Frame dct 
  3553.  
  3554.  
  3555.  
  3556. What does it mean to be compliant with MPEG ?
  3557.  
  3558. There are two areas of conformance/compliance in MPEG:
  3559.  
  3560. 1. Compliant bitstreams
  3561. 2. Compliant decoders
  3562.  
  3563. Technically speaking, video bitstreams consisting entirely of I-frames
  3564. are syntactically compliant with the MPEG specification.  The I-frame
  3565. sequence simply utilizes a rather limited subset of the full syntax.
  3566. Compliant bitstreams must obey the range limits (e.g. motion vectors
  3567. ranges, bit rates, frame rates, buffer sizes) and permitted syntax
  3568. elements in the bitstream (e.g. chroma_format, B-pictures, etc).
  3569.  
  3570. Decoders, however, must be able to decode all combinations of legal
  3571. bitstreams.. For example, a decoder which is incapable of decoding P or
  3572. B frames is definitely not a Main Profile or Constrained Parameters
  3573. decoder! Likewise, full arithmetic precision must be obeyed before any
  3574. decoder can be called "MPEG compliant."   The IDCT, inverse quantizer,
  3575. and motion compensated predictor must meet the accuracy requirements
  3576. defined in the MPEG document. Real-time conformance is more complicated
  3577. to measure than arithmetic precision, but it reasonable to expect that
  3578. decoders that skip frames on reasonable bitstreams are not likely to be
  3579. considered compliant.
  3580.  
  3581. What are Profiles and Levels?
  3582.  
  3583. A. MPEG-2 Video Main Profile and Main Level is analogous to MPEG-1's
  3584. CPB, with  sampling limits at CCIR 601 parameters (720x480x30 Hz  or
  3585. 720x576x24 Hz).  "Profiles" limit syntax (i.e. algorithms), whereas
  3586. "Levels" limit coding parameters (sample rates, frame dimensions, coded
  3587. bitrates, etc.). Together, Video Main Profile and Main Level
  3588. (abbreviated as MP@ML) normalize complexity within feasible limits of
  3589. 1994 VLSI technology (0.5 micron), yet still meet the needs of the
  3590. majority of applications. MP@ML is the conformance point for most cable
  3591. and satellite TV systems.
  3592.  
  3593. [insert a description of each Profiles and Levels here]
  3594.  
  3595. Can MPEG-1 encode higher sample rates than 352 x 240 x 30 Hz ?
  3596.  
  3597. A. Yes. The MPEG-1 syntax permits sampling dimensions as high as 4095 x
  3598. 4095 x 60 frames per second.  The MPEG most people think of as "MPEG-1"
  3599. is really a kind of subset known as Constrained Parameters bitstream
  3600. (CPB).
  3601.  
  3602. What are Constrained Parameters Bitstreams?
  3603.  
  3604. MPEG-1 CPB are a limited set of sampling and bitrate parameters
  3605. designed to normalize decoder computational complexity, buffer size,
  3606. and memory bandwidth while still addressing the widest possible range
  3607. of  applications. The parameter limits were intentionally designed to
  3608. permit decoder implementations integrated with 4 Megabits (512 Kbytes)
  3609. of DRAM.
  3610.  
  3611. Bitstream Parameter
  3612. Limit 
  3613.  
  3614. pixels/line
  3615. 704
  3616.  
  3617. lines/frame
  3618. 480 or 576
  3619.  
  3620. pixels/frame
  3621. 101,376 pixels
  3622.  
  3623. pixels/second
  3624. 2,534,400
  3625.  
  3626. frames/sec
  3627. 30 Hz
  3628.  
  3629. bit rate
  3630. 1.86 Mbit/sec
  3631.  
  3632. buffer size
  3633. 40 Kbytes
  3634.  
  3635.  
  3636. The sampling limits of CPB are bounded at the ever popular SIF rate:
  3637. 396 macroblocks (101,376 pixels) per picture if the picture rate is
  3638. less than or equal to 25 Hz, and 330 macroblocks (84,480 pixels) per
  3639. picture if the picture rate is 30 Hz. The MPEG nomenclature loosely
  3640. defines a pixel or "pel" as a unit vector containing a complete
  3641. luminance sample and one fractional (0.25 in 4:2:0 format) sample from
  3642. each of the two chrominance (Cb and Cr) channels. Thus, the
  3643. corresponding bandwidth figure can be computed as:
  3644.  
  3645.      352 samples/line x 240 lines/picture x 30 pictures/sec x 1.5
  3646.      samples/pixel
  3647.  
  3648.  or 3.8 Ms/s (million samples/sec) including chroma, but not including
  3649.  blanking intervals.  Since most decoders are capable of sustaining VLC
  3650. decoding at a faster rate than 1.8 Mbit/sec, the coded video bitrate
  3651. has become the most often waived parameter of CPB. An encoder which
  3652. intelligently employs the syntax tools should achieve SIF quality
  3653. saturation at about 2 Mbit/sec, whereas an encoder producing streams
  3654. containing  only I (Intra) pictures might require as much as 8 Mbit/sec
  3655. to achieve the same video quality.
  3656.  
  3657. Why is Constrained Parameters so important?
  3658.  
  3659.  A. It is an optimum point that allows (just barely) cost effective
  3660.  VLSI implementations in 1992 technology (0.8 microns).  It also
  3661. implies a nominal guarantee of interoperability for decoders and a
  3662. reasonable class of performance for encoders.  Since CPB is the most
  3663. popular canonical MPEG-1 conformance point, MPEG devices which are not
  3664. capable of at least meeting SIF rates are usually not considered to be
  3665. true MPEG by industry.
  3666.  
  3667.  Picture buffers (i.e. "frame stores") and coded data buffering
  3668.  requirements for MPEG-1 CPB fit just snugly into 4 Mbit of memory
  3669. (DRAM).
  3670.  
  3671. Who uses constrained parameters bitstreams?
  3672.  
  3673. A. Principal CPB applications are Compact Disc video (White Book or
  3674. CD-I) and desktop video.  Set-top TV decoders fall into a higher
  3675. sampling rate category known as "CCIR 601" or "Broadcast rate," which
  3676. as a rule of   thumb, has sampling dimensions and bandwidth 4 times
  3677. that of SIF (Constrained Parameter sample rate limit).
  3678.  
  3679. Are there ways of circumventing constrained parameters bitstreams for
  3680. SIF  class applications and decoders ?
  3681.  
  3682.  A. Yes, some.  Remember that CPB limits pictures by macroblock count
  3683.  (or pixels/frame). 416 x 240 x 24 Hz sampling rates are still within
  3684. these constraints. Deviating from 352 samples/line could throw off many
  3685. decoder implementations which possess limited horizontal sample rate
  3686. conversion abilities. Some decoders do in fact  include a few rate
  3687. conversion modes, with a filter usually implemented via binary taps
  3688. (shifts and adds).  Likewise, the target sample rates are usually
  3689. limited or ratios (e.g. 640, 540, 480 pixels/line, etc.).  Future MPEG
  3690. decoders will likely include on-chip arbitrary sample rate converters,
  3691. perhaps capable of operating in the vertical direction (although there
  3692. is little need of this in applications using standard TV monitors where
  3693. line count is constant, with the possible exception of windowing in
  3694. cable box graphical user interfaces).
  3695.  
  3696. Also, many CD videos are letterboxed at the 16:9 aspect ratio.  The
  3697. actual coded and display sampling dimensions are 384 x 216 (note
  3698. 384/216 = 16/9).  These programs are typically movies coded at the more
  3699. manageable 24 frames/sec.
  3700.  
  3701. Are there any other conformance points like CPB for MPEG-1?
  3702.  
  3703.  A. Undocumented ones, yes.  A second generation of decoder chips
  3704.  emerged on the market   about 1 year after the first wave of SIF-class
  3705. decoders.  Both LSI Logic and SGS-Thomson introduced CCIR 601 class
  3706. MPEG-1 video decoders to fill in the gap between canonical MPEG-1 (SIF)
  3707. and the emergence of Main Profile at Main Level (CCIR 601) MPEG-2
  3708. decoders.  Under non-disclosure agreement, C-Cube had the  CL- 950,
  3709. although since Q2'94, the CL-9100 is now the full MPEG-2 successor in
  3710. production.  MPEG-1 decoders in the CCIR 601 class, or Main Level, were
  3711. all too often called MPEG-1.5 or MPEG-1++ decoders.  For the first year
  3712. of operation, the Direct Broadcasting Satellite service in the United
  3713. States (Hughes Direct TV and Hubbards USSB) called only upon MPEG-1
  3714. syntax to represent interlaced video before switching to full MPEG-2
  3715. syntax.
  3716.  
  3717. What frame rates are permitted in MPEG?
  3718.  
  3719. A limited set is available for the choosing in MPEG-1 and the currently
  3720. defined set of Profiles and Levels of MPEG-2, although "tricks" could
  3721. be played with Systems-layer Time Stamps to convey non-standard picture
  3722. rates.  The set is: 23.976 Hz (3-2 pulldown NTSC), 24 Hz (Film),  25 Hz
  3723. (PAL/SECAM or 625/60 video), 29.97 (NTSC), 30 Hz (drop-frame NTSC  or
  3724. component 525/60), 50 Hz (double-rate PAL), 59.97 Hz (double rate
  3725. NTSC),  and 60 Hz (double-rate, drop-frame NTSC/component 525/60
  3726. video).
  3727.  
  3728. Only 23.976, 24, 25, 29.97, and 30 Hz are within the conformance space
  3729. of Constrained Parameter Bitstreams and Main Level.
  3730.  
  3731.  
  3732. What areas can be improved upon to create a better syntax 
  3733. than MPEG?
  3734.  
  3735. Several  improvements can be made to the MPEG syntax while remaining
  3736. within the framework of block based coding. As implementation
  3737. technology improves with time, the ratio of computation to sample rate
  3738. can be increased for the same implementation cost. With each
  3739. evolutionary stage in the shrinking of the semiconductor lithography
  3740. process (line width), more complex coding methods become economically
  3741. realizable. Some of the well-known or well-anticipated areas for
  3742. improvement are described below:
  3743.  
  3744. Intra coding:
  3745. For intra pictures, subband methods such as wavelets combined with
  3746. improved quantization and entropy coders could gain as much as 2-4 dB
  3747. over MPEG Intra pictures.  The problem becomes more complex when
  3748. considering the coding of Intra Macroblocks in mixed pictures, such as
  3749. P or B, since the extend of a subband must, in the simplest of
  3750. schemes,  be limited to the dimensions of a macroblock.
  3751.  
  3752.  
  3753. Prediction error coding
  3754. One of the strongest gripes against MPEG is the use of the DCT for
  3755. decorrelation of prediction error blocks.  One explanation is that the
  3756. DCT is suited for the statistical correlation of intra signals, but
  3757. less suited for the statistics of prediction error (Non-Intra) signals.
  3758. One common proposal is to replace the DCT with a Vector Quantizer.
  3759. Prediction error (Non-intra) blocks typically contain far fewer bits
  3760. than intra blocks.  (The bits that comprise a Non-intra blocks can be
  3761. thought of as having been previously distributed over previous blocks
  3762. in previous pictures in the form of coefficients and side
  3763. information...)
  3764.  
  3765. Finer coding unit granularity's:
  3766. The size of the transform block could be made smaller, larger, or both
  3767. (myriad of different sizes).  Likewise, the size of the motion
  3768. compensation block can be made larger or smaller.  The cost is more
  3769. complex semantics (more decoder complexity) and the overhead bits to
  3770. select the block size.  Instead of sharing the same side information,
  3771. the blocks within the macroblock could be assigned their own motion
  3772. vectors, macroblock quantization scale factors, etc.
  3773.  
  3774. Many advanced techniques were in investigated by MPEG during the
  3775. formative stages of the specification, but were eventually eliminated
  3776. for falling below a threshold set for coding gain vs. implementation
  3777. complexity. Often, proposals presented a significant departure from the
  3778. main stream algorithms under consideration. Each bit added to the
  3779. syntax, or rule added to the semantics represents several gates to a
  3780. silicon implementation, or from a software perspective, an extra table,
  3781. if-then or case statement at multiple points in the decoding program.
  3782.  
  3783.  
  3784.  
  3785. What are the similarities and differences between MPEG and 
  3786. H.263
  3787.  
  3788. During its formative stages, H.263 was known as "H.26P" or "H.26X". It
  3789. is an ITU-T standard for low-bitrate video and audio teleconferencing.
  3790. It is designed to be more efficient (at least 2dB) than H.261 for bit
  3791. rates below 64 kbits/sec (ISDN B channel).  The primary target bit
  3792. rate, approximately 27,000 bits/sec,  is the payload rate of the V.34
  3793. (a.k.a "V.Fast" or "V.Last") modem standard.  In a typical scenario, 20
  3794. kbit/sec would be allocated for the video portion, and 6.5 kbit/sec for
  3795. the speech portion.
  3796.  
  3797. Since the H.261 syntax was defined in 1990, techniques and
  3798. implementation power have naturally improved.  H.263 collects many of
  3799. the advanced  methods proposed during MPEGs formative stages into a
  3800. syntax which shares a common basis more with MPEG-1 video than with
  3801. H.261.
  3802.  
  3803. The detailed differences and similarities are summarized below:
  3804.  
  3805. Sample rate, precision, and color space:
  3806. H.263 pictures are transmitted with QCIF dimensions.  MPEG and JPEG
  3807. allow nearly any picture size to be described in the headers.  A fixed
  3808. picture size promotes interoperability by forcing all implementors to
  3809. operate at a common rate, rather than by allowing implementors to get
  3810. away with whatever lowest sample rate the consumer can be tricked into
  3811. buying.  Another reason for a fixed sample rate is that, unlike MPEG
  3812. which is generic, H.263 is geared towards a specific application
  3813. (teleconferencing).  Other MPEG applications such as CD Video and Cable
  3814. TV define their own fixed parameters. Chromaticy is again YCbCr, 4:2:0
  3815. macroblock structure, and 8 bits of uniform sample precision.
  3816.  
  3817. [details deferred]
  3818.  
  3819.  
  3820.  
  3821. How would you describe MPEG to the Data Compression 
  3822. expert?
  3823.  
  3824. A. MPEG video is a block-based coding scheme.
  3825.  
  3826.  
  3827. How does MPEG video really compare to TV, VHS, laserdisc ?
  3828.  
  3829. A. VHS picture quality can be achieved for film source video at about 1
  3830. million bits per second (with careful application of proprietary
  3831. encoding methods).  Objective comparison of  MPEG to VHS is complex.
  3832. The luminance response curve of VHS places -3 dB (50% response, the
  3833. common definition of bandlimit) at around analog 2 MHz (digital
  3834. equivalent to 200 samples/line). VHS chroma is considerably less dense
  3835. in the horizontal direction than MPEG's 4:2:0 signal (compare 80
  3836. samples/line equivalent to 176 !!).  From a sampling density
  3837. perspective, VHS is superior only in the vertical direction (480
  3838. luminance lines compared to 240).  When other analog factors are taken
  3839. into account, such as interfield crosstalk and the TV monitor Kell
  3840. factor, the perceptual vertical advantage becomes much less than 2:1.
  3841. VHS is also prone to such inconveniences as timing errors (an annoyance
  3842. addressed by time base correctors), whereas digital video is fully
  3843. discretized. Duplication processes for pre-recorded VHS tapes at high
  3844. speeds (5 to 15 times real time playback speed)  introduces additional
  3845. handicaps. In gist, MPEG-1 at its nominal parameters can match VHSs
  3846. sexy low-pass-filtered look, but for critical sequences, is probably
  3847. overall inferior to a well mastered, well duplicated VHS tape.
  3848.  
  3849. With careful coding schemes, broadcast NTSC quality can be approximated
  3850. at about 3 Mbit/sec, and PAL quality at about 4 Mbit/sec for film
  3851. source video.  Of course, sports  sequences with complex spatial-
  3852. temporal activity should be treated with higher bit rates, in the
  3853. neighborhood of  5 and 6 Mbit/sec. Laserdisc is perhaps the most
  3854. difficult medium to make comparisons with.
  3855.  
  3856. First, the video signal encoded onto a laserdisc is composite, which
  3857. lends the signal to the familiar set of artifacts (reduced color
  3858. accuracy of YIQ, moirse patterns, crosstalk, etc).  The medium's
  3859. bandlimited signal is often defined by laserdisc player manufacturers
  3860. and main stream publications as capable of rendering up to 425 TVL (or
  3861. frequencies with Nyquist at 567 samples/line). An equivalent component
  3862. digital representation would therefore have sampling dimensions of 567
  3863. x 480 x  30 Hz. The carrier-to-noise ratio of a laserdisc video signal
  3864. is typically better  than 48 dB.  Timing accuracy is excellent,
  3865. certainly better than VHS.  Yet some of the clean characteristics of
  3866. laserdisc can be simulated with MPEG-1 signals as low as 1.15 Mbit/sec
  3867. (SIF rates),  especially for those areas of medium detail (low spatial
  3868. activity) in the presence of uniform motion (affine motion vector
  3869. fields). The appearance of laserdisc or Super VHS quality can therefore
  3870. be obtained for many video sequences with low bit rates, but for the
  3871. more general class of images sequences, a bit rate ranging from 3 to 6
  3872. Mbit/sec is necessary.
  3873.  
  3874.  
  3875. What are the typical coded sizes for the MPEG frames?
  3876.  
  3877. Typical bit sizes for the three different picture types:
  3878. Level
  3879. I
  3880. P
  3881. B
  3882. Average
  3883.  
  3884. 30 Hz SIF
  3885. @ 1.15 Mbit/sec
  3886. 150,000
  3887. 50,000
  3888. 20,000
  3889. 38,000
  3890.  
  3891. 30 Hz CCIR 601
  3892. @ 4 Mbit/sec
  3893. 400,000
  3894. 200,000
  3895. 80,000
  3896. 130,000
  3897.  
  3898.  
  3899. Note: the above example is taken from a standard test sequence coded by
  3900. the Test Model method, with an I frame distance of 15 (N = 15), and a P
  3901. frame distance of 3 (M = 3).
  3902.  
  3903. Of course, among differing source material, scene changes, and use of
  3904. advanced encoder models these numbers can be significantly different.
  3905.  
  3906. At what bitrates is MPEG-2 video optimal? 
  3907.  
  3908. The Test subgroup has defined a few example "Sweet spot" sampling
  3909. dimensions and bit rates for MPEG-2:
  3910.  
  3911. Dimensions
  3912. Coded rate
  3913. Application
  3914.  
  3915. 352x480x24 Hz 
  3916. (progressive)
  3917. 2 Mbit/sec
  3918. Equivalent to VHS quality.  Intended for film source video. Half 
  3919. horizontal 601(HHR).  Looks almost broadcast NTSC quality
  3920.  
  3921. 544x480x30 Hz 
  3922. (interlaced).
  3923. 4 Mbit/sec
  3924. PAL broadcast quality (nearly full capture of 5.4 MHz luminance 
  3925. signal).  544 samples matches the width of a 4:3 picture windowed 
  3926. within 720 sample/line 16:9 aspect ratio via pan&scan
  3927.  
  3928. 704x480x30 
  3929. Hz.(interlaced)
  3930. 6 Mbit/sec
  3931. Full CCIR 601 sampling dimensions
  3932.  
  3933.  
  3934. These numbers may be too ambitious.  Bit rates of 3, 6, and 8 Mbit/sec
  3935. respectively provide transparent quality for the above application
  3936. examples when generated by a reasonably sophisticated encoder.
  3937.  
  3938. Why does film perform so well with MPEG ?
  3939.  
  3940.  
  3941. 1. The frame rate is 24 Hz (instead of 30 Hz) which is a savings of
  3942. some 20%.
  3943.  
  3944. 2. Film source video is inherently progressive.  Hence no fussy
  3945. interlaced spectral frequencies.
  3946.  
  3947. 3. The pre-digital source was severely oversampled (compare 352 x 240
  3948. SIF to 35 millimeter film at, say, 3000 x 2000 samples).  This can
  3949. result in a very high quality signal, whereas most video cameras do not
  3950. oversample, especially in the vertical direction.
  3951.  
  3952. 4. Finally, the spatial and temporal modulation transfer function (MTF)
  3953. characteristics (motion blur, etc) of film are more amenable to the
  3954. transform and quantization methods of MPEG.
  3955.  
  3956. What is the best compression ratio for MPEG ?
  3957.  
  3958. The MPEG sweet spot is about 1.2 bits/pel Intra and 0.35 bits/pixel
  3959. inter. Experimentation has shown that intra frame coding with the
  3960. familiar DCT-Quantization-Huffman hybrid algorithm achieves optimal
  3961. performance at about an average of 1.2 bits/sample or about 6:1
  3962. compression ratio. Below this point, artifacts become non-transparent.
  3963.  
  3964. Is there an MPEG file format?
  3965.  
  3966. The traditional descriptors that file formats provide in headers, such
  3967. image height, width, color space, etc., are already embedded within the
  3968. MPEG bitstream in the sequence header.  Directory file formats are
  3969. described in the White Book and DVD specifications.
  3970.  
  3971.  
  3972. What is the Digital Video Disc (DVD) ?
  3973.  
  3974. In 1994, Toshiba united with Thomson Consumer Electronics, Pioneer, and
  3975. a handful of Hollywood studios to define a new 12 cm diameter compact
  3976. disc format for broadcast rate digital video. The new format basically
  3977. increases the effective areal storage density over the 1982 Red Book
  3978. format by some 6:1 (800 Mbytes vs 5 GBytes).  This is achieved through
  3979. a combination of shorter laser wavelength, finer track pitch, inter-pit
  3980. pitch, and better optics. The thickness of the disc is reduced from the
  3981. Red Book's 1.2 millimeters to 0.6 millimeters. However, the new format
  3982. can be glue two 0.6 mm thick discs back-to-back, forming a double- size
  3983. disc 1.2 mm thick with a total capacity of 10 Gbytes. A two hour movie,
  3984. encoded onto only one side, would contain a video bistream average at 5
  3985. Mbit/sec. Or 10 Mbit/sec if distributed on both sides of a disc.  Most
  3986. of the 6:1 gain is achieved though more efficient encoding of bits onto
  3987. the disc.  Only a 2:1 factor comes purely from the reduction in
  3988. wavelength.
  3989.  
  3990. By comparison, today's double-sided analog video laserdiscs have a
  3991. diameter of 30 cm (571 cm^2 of usable area), and a thickness of 2.4
  3992. millimeters.  Storage capacity is a maximum of 65 minutes per side.
  3993.  
  3994. A future potential format for HDTV may employ a blue wavelength laser
  3995. (0.4 microns), offering another 2:1 increase in areal density, or 20
  3996. Gbytes total.  Other alternatives include larger disc sizes. For
  3997. example, if bit coding at DVD areal densities were applied to the
  3998. familiar 30 cm disc, the average bitrate for the 65 minutes of video
  3999. per side would be nearly 70 Mbit/sec !!
  4000.  
  4001.  
  4002.  
  4003.  
  4004.  
  4005. What is the MPEG committee ?
  4006.  
  4007.  In fact, MPEG is a nickname.  The official title is: ISO/IEC JTC1 SC29 WG11.
  4008.  
  4009.  
  4010. Archive-name: mpeg-faq/part4
  4011. Last-modified: 1995/06/07
  4012. Version: v 4.0 95/06/07
  4013. Posting-Frequency: bimonthly
  4014.  
  4015.    ISO:  International Organization for Standardization
  4016.    IEC:  International Electrotechnical Commission
  4017.    JTC1: Joint Technical Committee 1
  4018.    SC29: Sub-committee 29
  4019.    WG11: Working Group 11  (moving pictures with... uh, audio)
  4020.  
  4021.  
  4022. What ever happened to MPEG-3 ?
  4023.  
  4024. MPEG-3 was to have targeted HDTV applications with sampling dimensions
  4025. up to 1920 x 1080 x 30 Hz and coded bitrates between 20 and 40
  4026. Mbit/sec.  It was later discovered that with some (syntax compatible)
  4027. fine tuning, MPEG-2 and MPEG-1 syntax worked very well for HDTV rate
  4028. video.  The key is to maintain an optimal balance between sample rate
  4029. and coded bit rate.
  4030.  
  4031.  Also, the standardization window for HDTV was rapidly closing.  Europe
  4032.  and the United States were on the brink of committing to
  4033. analog-digital subnyquist hybrid algorithms (D-MAC, MUSE, et al).  By
  4034. 1992, European all-digital projects such as HD-DIVINE and VADIS
  4035. demonstrated better picture quality with respect to bandwidth using the
  4036. MPEG syntax.  In the United States, the Sarnoff/NBC/Philips/Thomson
  4037. HDTV consortium had used MPEG-1 syntax from the beginning of its
  4038. all-digital proposal, and with the exception of motion artifacts (due
  4039. to limited search range in the encoder), was deemed to have the best
  4040. picture quality of all three digital proponents in the early 1993
  4041. bake-off. HDTV is now part of the MPEG-2 High-1440 Level and High Level
  4042. toolkit.
  4043.  
  4044.  
  4045.  
  4046.  
  4047. Why bother having an MPEG-2 ?
  4048.  
  4049. A. MPEG-1 was optimized for CD-ROM or applications at about 1.5
  4050. Mbit/sec. Video was strictly non- interlaced (i.e. progressive).  The
  4051. international cooperation executed well enough for MPEG-1, that the
  4052. committee began to  address applications at broadcast TV sample rates
  4053. using the CCIR 601 recommendation (720 samples/line by 480 lines per
  4054. frame by 30 frames per second or about 15.2 million samples/sec
  4055. including chroma) as the reference.
  4056.  
  4057. Unfortunately, today's TV scanning pattern is interlaced.  This
  4058. introduces a duality in block coding:  do local redundancy areas
  4059. (blocks) exist exclusively in a field or a frame.(or a particle or
  4060. wave) ?  The answer of course is that some blocks are one or the other
  4061. at different times, depending on motion activity. The additional man
  4062. years of experimentation and implementation between MPEG-1 and MPEG-2
  4063. improved the method of block-based transform coding.
  4064.  
  4065. It is often remarked that MPEG-2 spent several hundred man years and
  4066. 10s of millions of dollars yet only gained 20% coding efficiency over
  4067. MPEG-1 for interlaced video signals.  However, the collaborative
  4068. process brought companies together, and from that came a standard well
  4069. agreed upon.  In many ways, the political achievement dwarfs the
  4070. technical one.  Also, MPEG-2 was exploratory.  Coding of interlaced
  4071. video was unknown territory.  It took some considerable convincing to
  4072. demonstrate that a simple syntax, akin to MPEG-1, was as efficient as
  4073. other proposals.  Left by themselves, each company would probably have
  4074. produced a diverse scope of syntax.
  4075.  
  4076. Is MPEG patented ?
  4077.  
  4078. Many of the companies which participated in the MPEG committee have
  4079. indicated that they hold patents to fundamental elements of the MPEG
  4080. syntax and semantics.  Already, the group known as the "IRT consortium"
  4081. (CCETT, IRT, et al) have defined royalty fees and licensing agreements
  4082. for OEMs of MPEG Layer I and II audio encoders and decoders.  The fee
  4083. is $1 USD per audio channel in small quantities, and $0.50 USD per
  4084. channel in large quantities.
  4085.  
  4086. A royalty and licensing agreement has yet to be reached among holders
  4087. of  Video and Systems patents, however the figure has already been
  4088. agreed upon, ranging from $3 to $4 per implementation. Whether it is
  4089. retroactively applicable or not to products already sold, or whether it
  4090. is possible to avoid the patents via approximation techniques, is not
  4091. known. The non-profit organization,CableLabs (Boulder, Colorado), is
  4092. responsible for leading the MPEG Intellectual Property Rights effort
  4093. (known canonically as the "MPEG Patent Pool.").  An agreement is
  4094. expected by mid 1995.
  4095.  
  4096. In order to reach the IS (International Standard) document stage, all
  4097. parties must have sent in a letter to ISO stating they agree to license
  4098. their intellectual property on fair and reasonable terms,
  4099. indiscriminately. For MPEG-1 and MPEG-2, this was accomplished in mid
  4100. 1993.
  4101.  
  4102. Companies which hold patents often cross-license each other.  Each
  4103. party does not have to pay royalties to one another.
  4104.  
  4105. What is White Book
  4106.  
  4107. The White Book specifies the file structure and indexing of multiplexed
  4108. MPEG video and audio streams.  White Book also specifies  the Karaoke
  4109. application's reference table which describes programs and their sector
  4110. locations.  At the lowest layer, White Book builds upon the CD-ROM XA
  4111. spec.. Extension data includes screen pointing devices, address list of
  4112. all Intra pictures within a program, CD version number, Closed Caption
  4113. data, and information indexing of MPEG still pictures.
  4114.  
  4115. The specific MPEG parameter definitions of White Book are:
  4116.  
  4117. Audio coding method:  MPEG-1 Layer II
  4118. Sampling rate:  44.1 kHz
  4119. Coded bit rate:  224 Kbits/sec
  4120. Mode:  stereo, dual channel, or intensity stereo
  4121.  
  4122. Video coding method:  MPEG-1
  4123. Permitted sample rates: 
  4124. 352 pixels/line x 240 lines/frame x 29.97 frames/sec    (NTSC rate)
  4125. 352 pixels/line x 240 lines/frame x 23.976 frames/sec  (NTSC film rate)
  4126. 352 pixels/line x 288 lines/frame x 25 frame/sec          (PAL rate)
  4127. Maximum bitrate:  1.1519291 bits/sec
  4128.  
  4129. Recommendations include:
  4130.    pixel aspect ratios:  1.0950 (352x240) or 0.9157 (352 x 288)
  4131.   Intra pictures be placed at least once every 2 seconds.
  4132.  
  4133. Still pictures: ("Intra" picture_coding_type only) 
  4134.   Normal res:  352 x 240    or   352 x 288  (maximum 46 Kbytes coded size)
  4135.   Double res:   704 x 480    or   704 x 576  (maximum 224 Kbytes coded size)
  4136.  
  4137.  
  4138. The other books are:
  4139.  
  4140. Red Book:  this is the original Compact Disc Audio specification (circa
  4141. 1980).  All other books (Yellow, Green, Orange, White) are identical at
  4142. the low-level, sharing a common base with Red Book.  This grandfather
  4143. specification defines sectors, tracks, and channel coding (8/14 EFM
  4144. outer forward error correction (FEC), 8-bit polynomial interleaved
  4145. Reed-Soloman inner forward error correction, etc), and physical
  4146. parameters (disc diameter 12 cm, laser wavelength 0.8 microns, track
  4147. pitch, land-to-pit spacing, digital modulation, etc.).
  4148.  
  4149. Yellow Book: first CD-ROM specification (circa 1986).  Later appended
  4150. by the CD-ROM XA spec.
  4151.  
  4152. Green Book: CD-I (Compact Disc Interactive).
  4153.  
  4154. Orange Book:  Kodak Photo CD
  4155.  
  4156. ISO 9660: (circa 1988) describes file structure for CD-ROM XA (circa
  4157. 1988). Similar to MS-DOS, filenames are case insensitive and limited to
  4158. 8 characters, and 3 extension characters (8.3 format).  Many CD-ROMs
  4159. containing MPEG are nothing more than Yellow Book CD which treat
  4160. multiplexed video and audio bitstreams as an ordinary file.
  4161.  
  4162.  
  4163. Further information can be retrieved from:
  4164.  
  4165. Philips Consumer Electronics B.V.
  4166. Coordination Office Optical & Magnetic Media Systems
  4167. Building SWA-1
  4168. P.O. Box 80002
  4169. 5600 JB Eindhoven
  4170. The Netherlands
  4171. Tel: +31 40 736409
  4172. Fax: +31 40 732113
  4173.  
  4174.  
  4175.  
  4176. What are some typical picture sizes and their associated 
  4177. applications ?
  4178.  
  4179.  
  4180. 352 x 240    SIF.  CD WhiteBook Movies, video games.
  4181. 352 x 480    HHR.  VHS equivalent
  4182. 480 x 480    Bandlimited (4.2 Mhz) broadcast NTSC.
  4183. 544 x 480    Laserdisc, D-2, Bandlimited PAL/SECAM.
  4184. 640 x 480    Square pixel NTSC
  4185. 720 x 480    CCIR 601. Studio D-1. Upper limit of Main Level.
  4186.  
  4187.  
  4188.  
  4189. Future topics:
  4190.  
  4191. How are MPEG video and audio streams synchronized?
  4192. What is Digital Video Cassette (DVC) ?
  4193. How does the D-VHS format encode MPEG signals?
  4194. What is MPEG-4 ?
  4195. The high level and low level differences between MPEG, JPEG, H.261, and H.263
  4196. MPEG in applications
  4197. More on DVD.
  4198. Details on DVB
  4199. Implementations (semiconductor chips)
  4200. Software Complexity and performance.  Well known speedup methods.
  4201. MPEG software on the Internet (audio, video, systems)
  4202. Specific MPEG articles in literature.
  4203. Current activities of MPEG-4
  4204. MPEG Compliance bitstreams
  4205.  
  4206. -----
  4207. cfogg@chromatic.com
  4208.  
  4209. -------------------------------------------------------------------------------
  4210.  
  4211. ~Subject: What happened at the MPEG - NY meeting ?
  4212.  
  4213. From: cfogg@ole.cdac.com (Chad Fogg)
  4214. Date: 22 Jul 93 05:31:41 GMT
  4215.  
  4216. INTERNATIONAL ORGANISATION FOR STANDARDISATION
  4217. ORGANISATION INTERNATIONALE DE NORMALISATION
  4218. ISO/IEC JTC1/SC29/WG11
  4219. CODING OF MOVING PICTURES AND ASSOCIATED AUDIO
  4220.  
  4221. ISO/IEC JTC1/SC29/WG11  N0500
  4222. July 16, 1993
  4223.  
  4224. Source:    ISO/IEC JTC1/SC29/WG11
  4225. ~Title:    Press Release (Final) -- MPEG New York Meeting
  4226. Status:    For immediate release
  4227.  
  4228.  
  4229. Summary
  4230.  
  4231. This week in New York, at a meeting hosted by Columbia University, the 
  4232. Moving Picture Experts Group (MPEG) completed definition of MPEG-2 
  4233. Video, MPEG-2 Audio, and MPEG-2 Systems.  MPEG therefore confirmed 
  4234. that it is on schedule to produce, by November 1993, Committee Drafts of 
  4235. all three parts of the MPEG-2 Standard, for balloting by its member 
  4236. countries.
  4237.  
  4238. To ensure that a harmonized solution to the widest range of applications 
  4239. is achieved, MPEG, an ISO/IEC working group designated ISO/IEC 
  4240. JTC1/SC29/WG11, is working jointly with the ITU-TS Study Group 15 
  4241. "Experts Group for ATM Video Coding." MPEG also collaborates with 
  4242. representatives from other parts of ITU-TS, and from EBU, ITU-RS, SMPTE, 
  4243. and the North American HDTV community.
  4244.  
  4245.  
  4246. MPEG-2 Video
  4247.  
  4248. MPEG is developing the MPEG-2 Video Standard, which specifies the coded 
  4249. bit stream for high-quality digital video.  As a compatible extension, 
  4250. MPEG-2 Video builds on the completed MPEG-1 Video Standard (ISO/IEC IS 
  4251. 11172-2), by supporting interlaced video formats and a number of other 
  4252. advanced features, including features to support HDTV.  
  4253.  
  4254. As a generic International Standard, MPEG-2 Video is being defined in 
  4255. terms of extensible profiles, each of which will support the features 
  4256. needed by an important class of applications. At the March MPEG meeting 
  4257. in Sydney, the MPEG-2 Main Profile was defined to support digital video 
  4258. transmission in the range of about 2 to 15 Mbits/sec over cable, satellite, 
  4259. and other broadcast channels, as well as for Digital Storage Media (DSM) 
  4260. and other communications applications. Building on this success at this 
  4261. week's New York meeting, MPEG experts from participating countries in 
  4262. Asia, Australia, Europe, and North America further defined parameters of 
  4263. the Main Profile and Simple Profile suitable for supporting HDTV formats.
  4264.  
  4265. This week the MPEG experts also extended the features of the Main Profile 
  4266. by defining a hierarchical/scalable profile.  This profile aims to support 
  4267. applications such as compatible terrestrial TV/HDTV, packet-network 
  4268. video systems, backward-compatibility with existing standards (MPEG-1 
  4269. and H.261), and other applications for which multi-level coding is 
  4270. required.  For example, such a system could give the consumer the option 
  4271. of using either a small portable receiver to decode standard definition TV, 
  4272. or a larger fixed receiver to decode HDTV from the same broadcast signal.
  4273.  
  4274. This week's accomplishments in New York mean that the technical 
  4275. definition of MPEG-2 Video has been completed.  This was a critical 
  4276. milestone, and shows that MPEG-2 Video is on schedule for a Committee 
  4277. Draft in November.
  4278.  
  4279.  
  4280. MPEG-2 Audio
  4281.  
  4282. MPEG is developing the MPEG-2 Audio Standard for low bitrate coding of 
  4283. multichannel audio. MPEG-2 Audio coding will supply up to five full 
  4284. bandwidth channels (left, right, center, and two surround channels), plus 
  4285. an additional low frequency enhancement channel, and/or up to seven 
  4286. commentary/multilingual channels. The MPEG-2 Audio Standard will also 
  4287. extend the stereo and mono coding of the MPEG-1 Audio Standard (ISO/IEC 
  4288. IS 11172-3) to half sampling-rates (16 kHz, 22.05 kHz, and 24 kHz), for 
  4289. improved quality for bitrates at or below 64 kbits/s, per channel.
  4290.  
  4291. This week in New York, MPEG produced an updated version of the MPEG-2 
  4292. Audio Working Draft, and is on track for achieving a Committee Draft 
  4293. specification by the November MPEG meeting.
  4294.  
  4295. The MPEG-2 Audio multichannel coding Standard will provide 
  4296. backward-compatibility with the existing MPEG-1 Audio Standard 
  4297. (ISO/IEC IS 11172-3). Together with ITU-RS, MPEG is organizing formal 
  4298. subjective testing of the proposed MPEG-2 multichannel audio codecs and 
  4299. up to three non-backward-compatible (NBC) codecs. The NBC codecs are 
  4300. included in order to determine whether an NBC mode should be introduced 
  4301. as an addendum to the standard. If the results show clear evidence that an 
  4302. NBC mode improves the performance, a formal call for NBC proposals will 
  4303. be issued by MPEG, with a view to incorporate these features in the audio 
  4304. syntax.
  4305.  
  4306.  
  4307. MPEG-2 Systems
  4308.  
  4309. <IMG SRC="mpeg2sys.gif">
  4310.  
  4311. MPEG is developing the MPEG-2 Systems Standard to specify coding 
  4312. formats for multiplexing audio, video, and other data into a form suitable 
  4313. for transmission or storage. There are two data stream formats defined: 
  4314. the Transport Stream, which can carry multiple programs simultaneously, 
  4315. and which is optimized for use in applications where data loss may be 
  4316. likely, and the Program stream, which is optimized for multimedia 
  4317. applications, for performing systems processing in software, and for 
  4318. MPEG-1 compatibility.
  4319.  
  4320. Both streams are designed to support a large number of known and 
  4321. anticipated applications, and they retain a significant amount of 
  4322. flexibility such as may be required for such applications, while providing 
  4323. interoperability between different device implementations.  The 
  4324. Transport Stream is well suited for transmission of digital television and 
  4325. video telephony over fiber, satellite, cable, ISDN, ATM, and other 
  4326. networks, and also for storage on digital video tape and other devices.  It 
  4327. is expected to find widespread use for such applications in the very near 
  4328. future.
  4329.  
  4330. The Program Stream is similar to the MPEG-1 Systems standard (ISO/IEC 
  4331. 11172-1).  It includes extensions to support new and future applications.  
  4332. Both the Transport Stream and Program Stream are built on a common 
  4333. Packetized Elementary Stream packet structure, facilitating common 
  4334. video and audio decoder implementations and stream type conversions.  
  4335. This is well-suited for use over a wide variety of networks with 
  4336. ATM/AAL and alternative transports. This week in New York, MPEG 
  4337. completed definitions of the features, syntax, and semantics of the 
  4338. Transport and Program Streams, enabling product designers to proceed.  
  4339. Among other items, the Transport Stream packet length was fixed at 188 
  4340. bytes, including the 4-byte header.  This length is suited for use with ATM 
  4341. networks, as well as a wide variety of other transmission and storage 
  4342. systems.
  4343.  
  4344.  
  4345. MPEG-4
  4346.  
  4347. Work on a new MPEG initiative for very low bitrate coding of audiovisual 
  4348. programs has been approved by unanimous ballot of all national bodies of 
  4349. ISO/IEC JTC1. This work will begin officially at the next MPEG meeting in 
  4350. Brussels in September 1993.  It is scheduled to result in a draft 
  4351. specification in 1997.
  4352.  
  4353. This work will require the development of fundamentally new algorithmic 
  4354. techniques.  In conjunction with the MPEG meeting this week in New York, 
  4355. a one-day seminar was held on current research ideas applicable to low 
  4356. bitrate coding.  Demonstrations and papers were presented on a number of 
  4357. techniques, including model-based image coding, human interaction with 
  4358. multimedia environments, and low-bitrate speech coding.
  4359.  
  4360. When completed, the MPEG-4 standard will enable a whole spectrum of 
  4361. new applications, including interactive mobile multimedia 
  4362. communications.
  4363.  
  4364. ===========================================================================
  4365.  
  4366. ~Subject: SECTION 2. - PROFESSIONAL SOFTWARE
  4367.  
  4368. The named tools are:
  4369.  
  4370. SECTION 2. - PROFESSIONAL SOFTWARE
  4371. SUBSECTION - DOS
  4372.     MPEG Encoder by Xing
  4373. SUBSECTION - WINDOWS
  4374.     MPEG ARCADETM
  4375.     XingSound
  4376.     XingCD
  4377. SUBSECTION - UNIX
  4378.     NVR Research Kit
  4379.     Demo of NVR Digital Media Development Kit
  4380.     How will I get the NVR-Software ?
  4381.  
  4382. -------------------------------------------------------------------------------
  4383.  
  4384. ~Subject: SUBSECTION - DOS
  4385.  
  4386. -------------------------------------------------------------------------------
  4387.  
  4388. ~Subject: MPEG Encoder by Xing
  4389.  
  4390. The MPEG Encoder is available starting from 349.-DM incl. VAT.
  4391. BTW, the encoder still sells for 349.-DM and the MCI-driver for 199.-DM
  4392.  
  4393. [ The MCI-driver is nice, because it allows you to include movies in      ]
  4394. [ other documents. But it includes only the MPLAYER.EXE-icon in the       ]
  4395. [ document (not the first picture of the movie), the movie runs at        ]
  4396. [ whatever position (not where the icon is !), when you double-click it.  ]
  4397.  
  4398. [ Xing should have a close look at Microsoft's AVI-driver ;o) (but there  ]
  4399. [ movies are incredible slow and small, compared to MPEG  :o(             ]
  4400.  
  4401. ---------------------------------------------------------------------------
  4402.  
  4403. ~Subject: SUBSECTION - WINDOWS
  4404.  
  4405. ---------------------------------------------------------------------------
  4406.  
  4407. ~Subject: MPEG ARCADETM
  4408.  
  4409. Mediamatics Inc.'s MPEG ARCADETM Player is a software only, full
  4410. implementation of the MPEG-I ISO 11172 standard. The entire MPEG-1
  4411. decompression, both video and audio is implemented in software (along with
  4412. system stream parsing and video/audio synchronization). Finally, a MCI-DV
  4413. Media Player interface is provided to control/playback MPEG-1 encoded system
  4414. stream files. This media player is  fully compliant with OPEN PC MPEG
  4415. consortium's MpegVideo command set. This player will soon be available in
  4416. the retail market from major manufacturers of graphics cards, who will be
  4417. bundling our Arcade Player with their recently announced video-enabled
  4418. graphics cards. Arcade Player is currently offered only
  4419. to OEMs and has been licensed by Brooktree, Western Digital.
  4420.  
  4421. Arcade Player - Key Features:
  4422. *  Performance benchmarks:
  4423.     24-30 fps with synchronized audio on a Pentium  PCI system with a video
  4424. enabled graphics card.
  4425.    [Note: assumes graphics subsystem to contain a hardware color space
  4426. converter]
  4427. *  Supports Windows 3.1, Windows95TM and Windows NT operating system.
  4428. *  Supports playback of CD-I/VideoCD/CD-Karaoke format encoded content.
  4429. *  Tested with major DCI-aware graphics devices from companies such as
  4430.    Brooktree, Western Digital, Trident, S3, Cirrus, Avance, Alliance etc.
  4431.  
  4432. For More information:
  4433. Mediamatics Inc.
  4434. 4633 Old Ironsides Drive #328
  4435. Santa Clara, CA 95054
  4436. Ph: 408-496-6360
  4437. Fx: 408-496-6634
  4438. Email: info@mediamatics.com
  4439.  
  4440. ---------------------------------------------------------------------------
  4441.  
  4442. ~Subject: XingSound
  4443.  
  4444. [ Well, the encoder costs, but the decoder is PD ! But, attention ]
  4445. [ they say, they support full-MPEG-audio, but sure they are not.  ]
  4446. [ They do dirty tricks again, had a look at the streams, tststs   ]
  4447. [ Buts good stuff and its helping the MPEG-comunity.              ]
  4448.  
  4449.  
  4450. XingSound Realtime MPEG Audio Layer II Encoding on the PC !
  4451.  
  4452. Here it is: the first low cost REALTIME MPEG AUDIO Encoding on the PC via
  4453. a high quality 16 Bits Stereo DSP based Audio-Soundcard and the famous
  4454. Xing Technology XingSOUND(tm) MPEG Audio Encoder software.
  4455.  
  4456. The XingSound MPEG audio encoder encoder supports the DSP on the Soundcard
  4457. and enables realtime 15:1 compression of high quality Audio material without
  4458. any audible loss in quality.
  4459.  
  4460. REALTIME means REALTIME !
  4461.  
  4462. Wait no longer endless time (hours) to convert your WAV-files offline, like a
  4463. few shareware encoders do. No just record your songs in realtime to MPEG Audio
  4464. MP2 files. Compression factor can be set .
  4465.  
  4466. Comfortable record software coming with the package and also an offline WAV to
  4467. MP2 converter.
  4468.  
  4469. All software runs under win3.x !
  4470.  
  4471. With the optinal MPEG Audio- MCI-driver you can paste your MPEG audio files
  4472. directly via Media player into your applications and save huge disk space
  4473. compared when using 16 bits Stereo WAV files !
  4474.  
  4475. Also , when the DSP Soundcard is installed, you get full CD-quality
  4476. STEREO playback with 16 bits resolution ! (if other soundcard is installed,
  4477. XingSound MPEG player will only play in Mono)
  4478.  
  4479.  
  4480. Available only as a bundled package consisting of:
  4481.  
  4482. 1. XingSound MPEG Audio Realtime software for Windows 3.x incl. free MPEG audio
  4483. win3.x player program, WAV to MP2 offline converter, Realtime DSP supported
  4484. Audio recorder program, Realtime DSP supported FULL Stereo CD-quality MPEG
  4485. Audio playback
  4486.  
  4487. 2. 16 bits Stereo CD-quality DSP Soundcard, with win3.x drivers
  4488. (can be used as a normal Windows soundcard as well, Soundblaster and WSS
  4489. compatible, jumperless design, options set via software, Sony CD-ROM I/O onbord)
  4490.  
  4491. All manuals have english language !
  4492.  
  4493. ---------------------------------------------------------------------------
  4494.  
  4495. ~Subject: XingCD
  4496.  
  4497. <IMG SRC="xingcd2.gif">
  4498.  
  4499. It is the first AVI to MPEG Encoder, which allows you to make
  4500. MPEG system streams from AVI movies.
  4501.  
  4502. This means, you can directly use a Motion JPEG capture board at 352x288
  4503. resolution to capture Realtime video,
  4504. edit it with Adobe Premiere for Windows and make a Video CD out of it,
  4505. using the new XingCD Encoder.
  4506.  
  4507. The XingCD Encoder is software only, so there is no further hardware
  4508. required. It converts the AVI Video file to MPEG Video and the sound WAV file
  4509. to MPEG Audio and interleaves (multiplexes) these 2 bitstreams into an MPEG
  4510. system layer bitstream, so it could be played back via a REEL MAGIC card
  4511. for instance or the new Inside Technology MPEG player card for the PC.
  4512.  
  4513. The new MPEG Encoder supports full IBP format and is compatible with the
  4514. ISO11172 MPEG system layer description.
  4515.  
  4516. Price is 995.-US$, but this is still cheaper than a 20K US$ realtime MPEG
  4517. capture board.....
  4518.  
  4519. It can also encode from single TGA or BMP pics and it supports various
  4520. output format of:
  4521. 352x240, 352x288, 160x120 and custom output resolution.
  4522. Rescales source to desired ouput resolution etc...
  4523.  
  4524. Encode Process runs in the background.
  4525.  
  4526. I hope, we will get soon many "fresh" MPEG Video CDs !
  4527.  
  4528. ---------------------------------------------------------------------------
  4529.  
  4530. ~Subject: SUBSECTION - UNIX
  4531.  
  4532. ---------------------------------------------------------------------------
  4533.  
  4534. ~Subject: Xing Distributed Media Architecture
  4535.  
  4536. {XDMA} Network Description
  4537.  
  4538. The Xing Distributed Media Architecture ("XDMA"), developed by Xing Technology Corporation
  4539. ("Xing") is the first commercially available low-cost solution for world-wide and local network
  4540. delivery of live and on-demand video+audio.  The National Broadcasting Company (NBC) has
  4541. broadly deployed XDMA for broadcast delivery of financial news programming to subscribers in
  4542. the U.S and Europe.  New applications are being developed with XDMA for distance learning,
  4543. corporate communications, news delivery and computer based training in corporate,
  4544. educational, government and health care markets, employing wide area, local area and ISDN
  4545. networks.
  4546.  
  4547. How XDMA Differs from other Video Networks
  4548.  
  4549. Existing "on-demand" multimedia (video) network architectures are based on tightly coupled
  4550. point-to-point client-server communication, which result in 4 major limitations:
  4551.  
  4552.     1.  significant interaction is required between client and server for flow control,
  4553.         requiring complex server programming and signficant data overhead (on
  4554.         the order of 25% - 50%);
  4555.  
  4556.     2.  servers are not designed to deliver the same streams simultaneously
  4557.         to multiple users, making "live" delivery to multiple users impractical;
  4558.  
  4559.     3.  LAN-based server architectures are not designed to operate (and generally
  4560.         don't work well) over wide area networks; and
  4561.  
  4562.     4.  communication protocols employed are proprietary, and do not directly support the
  4563.         TCP/IP international standard
  4564.  
  4565. XDMA represents a significantly different multimedia network architecture, based on the
  4566. concept of "streaming media".  This architecture supports both "on-demand" as well as "live" It
  4567. video and audio delivery which does not require close coupling between the client and server.
  4568. It easily supports "broadcasting" or "multicasting" of live or on-demand content to multiple
  4569. simultaneous users over local as well as wide area networks.  The benefits of XDMA are
  4570. reduced network component complexity, significantly increased network flexibility, and
  4571. significantly reduced network overhead.  Moreover, Xing's approach is built around
  4572. international standards-based components - Unix and (in 3rd quarter 1995) Windows NT
  4573. servers, TCP-IP connections, MPEG video and audio compression, and HTTP-HTML client
  4574. server communication.  This allows better economies in implementation and easy integration
  4575. into existing communication networks.
  4576.  
  4577. Technical Description
  4578.  
  4579. XDMA was developed as a client-server media distribution architecture which can operate
  4580. independently or complement existing WWW (World Wide Web) HTTP / HTML architectures
  4581. on local area networks, private data wide area networks and public data wide area networks
  4582. (e.g. Internet).
  4583.  
  4584. XDMA delivers *streaming* multimedia - pictures, video and sound - based on the MPEG
  4585. international standards for video and audio compression from Unix and (in 3rd quarter 1995)
  4586. Windows NT servers.  When integrated with WWW, XDMA augments existing WWW
  4587. architectures by providing a Common Gateway Interface (CGI) to existing Web (HTTP)
  4588. servers, and viewer extensions to popular "Web HTML browsers" (i.e. Mosaic, Netscape,
  4589. Winweb, Spyglass, etc).  As such, XDMA can take advantage of user authentication
  4590. procedures as supported by current Web browsers and HTTP servers.
  4591.  
  4592. Streaming of multimedia data is a significantly different way of delivery, as the user can view /
  4593. hear the data as it is being transmitted instead of waiting for file transfer completion, and there
  4594. is no requirement for complex file systems such as Netware or NFS.
  4595.  
  4596. In addition, XDMA uses standard TCP-IP network protocols, and takes advantage of new
  4597. "multicast IP" protocols (RFC 1112) for data delivery, allowing multiple users to simultaneously
  4598. view / hear the same data streams without duplication of data or use of intrusive broadcast
  4599. protocols.
  4600.  
  4601. A typical XDMA configuration will include some of the following components:
  4602.     * XDMA Network Encoders
  4603.         - video+audio
  4604.         - audio only
  4605.         - file transmitter / encoder emulator
  4606.     * XDMA Network Servers
  4607.     * XDMA Network Clients
  4608.         - for PC Windows
  4609.         - for X-Windows
  4610.         - Standalone
  4611.     * XDMA Network Routers
  4612.     * XDMA Network Editors
  4613.     * XDMA Network Manager
  4614. as described below.
  4615.  
  4616. XDMA Benefits
  4617.  
  4618.     * compatible with existing enterprise TCP/IP networks, including Ethernet,
  4619.         ATM, FDDI, ISDN, T1 and Frame Relay
  4620.     * adds live and on-demand video and audio services to private and public WAN's
  4621.         and LAN's without infrastructure changes
  4622.     * low overhead (3%) video and audio streams are fully routable
  4623.     * all network components are SNMP manageable (3rd quarter 1995)
  4624.     * network congestion is controlled by on-the-fly bitrate reduction of video and
  4625.         audio streams;  streams are scalable from full rate down to ISDN
  4626.         BRI (56-128kbps)
  4627.     * SQL database management of XDMA streams (3rd quarter 1995)
  4628.     * servers may be distributed for load balancing and stream caching
  4629.     * software-only and hardware accelerated video and audio decode provided
  4630.         on client systems
  4631.     * user interface customizable through HTML / HTTP (Web / Mosaic) interface
  4632.     * compressed video and audio streams compliant with MPEG-1 and MPEG-2
  4633.         (ISO/ICE 11172 and 13818) international standards
  4634.         
  4635.  
  4636.  
  4637. XDMA Applications
  4638.  
  4639. Applications requiring "media on-demand" benefit from XDMA's simplified approach.  The
  4640. advantage becomes most apparent in applications with a combination of "on-demand" and
  4641. "live" media delivery requirements, especially when the clients are geographically dispersed.
  4642. NBC is using XDMA to deliver multiple simultaneous live financial and news video broadcast
  4643. channels to financial market subscribers (money managers, stock brokers, financial analysts)
  4644. in cities throughout the US and Europe as part of their "NBC Desktop Video" service.  Xing is
  4645. developing similar delivery services for other commercial TV and radio programmers.
  4646.  
  4647. Although commercial broadcast services provide very visible and compelling examples for
  4648. Xing's capabilities, the largest volume applications for "streaming media" will  be in corporate,
  4649. educational, government and health-care networks with "on-demand" and "live" communication
  4650. requirements, including training, presentations, status reporting, and occassionally,
  4651. entertainment.  Because of the rapid proliferation of TCP-IP / HTTP / HTML ( Internet + World
  4652. Wide Web + Mosaic), the infrastructure for integration of Xing "streaming media" architectures
  4653. is quickly developing.
  4654.  
  4655. Representative XDMA applications include:
  4656.  
  4657.     * Commercial broadcast delivery systems;
  4658.     * Internet Service Provider delivery of radio and TV programming;
  4659.     * On-line marketing, sales, service and customer support;
  4660.     * Enterprise-wide training, corporate information systems and regulatory
  4661.         compliance;
  4662.     * Medical information systems, including live monitoring and on-demand
  4663.         multimedia information retrieval;
  4664.     * Educational systems for live and on-demand distance learning as well
  4665.         media production;
  4666.     * Government networks for live and on-demand delivery of news events
  4667.         and briefings to policy makers and dissemination of public information;
  4668.     * Media production and distribution; and
  4669.      * Information archives
  4670.  
  4671. XDMA and ISDN
  4672.  
  4673. XDMA is ideally suited for ISDN remote access server and regional server applications such as
  4674. distance learning and news delivery, through its ability to provide on-the-fly MPEG stream
  4675. bitrate reduction and service of large numbers of simultaneous users.  Xing is currently
  4676. developing a reference platform for ISDN regional servers which delivers both high resolution /
  4677. low frame rate as well as low resolution / 30 frame per second video streams.  Demonstration
  4678. of this capability will be available via Xing's World Wide Web site - http://www.xingtech.com, as
  4679. well as via direct ISDN dial-in - 805/473-7200.
  4680.  
  4681. Xing Technology Corporation
  4682.  
  4683. Xing is the world's leading producer of PC based software technologies and products for digital
  4684. compression and decompression of video and audio in accordance with the MPEG (Moving
  4685. Pictures Expert Group) international standards.  Technology licensees include Microsoft, Intel,
  4686. Pacific Bell, NTT Japan, Fujitsu, Hewlett Packard and IBM.  In addition, Xing provided the key
  4687. technologies to NBC for the development of the first wide area digital video broadcast delivery
  4688. system ("NBC Desktop Video").
  4689.  
  4690.  
  4691. Glossary
  4692.  
  4693. MPEG  -  Motion Picture Experts Group.  The international standards for compression of video
  4694. and audio.  There are actually two standards - MPEG-1 (ISO/IEC 11172) and MPEG-2
  4695. (ISO/IEC 13818).  MPEG-1 was originally designed for delivery of video to consumer devices
  4696. at single speed CD-ROM data rates (150kbytes/sec), and is therefore lower resolution and
  4697. lower quality than MPEG-2, which was designed for delivery of broadcast and HDTV quality
  4698. video.  Each MPEG specification actually has 3 parts which define the video stream, the audio
  4699. stream and the video+audio encapsulating transport stream.
  4700.  
  4701. TCP-IP  -  Transmission Control Protocol + Internet Protocol.  A collection of communications
  4702. protocols (including TCP, IP, UDP, ARP, IGMP, ICMP, RAP, RIP, SNMP) that are the basis of
  4703. the Internet and all Unix networking.  Because TCP-IP can support both local and wide area
  4704. networking, while Novell's Netware protocols were designed only to support local area
  4705. networking, TCP-IP is rapidly become the standard as well for PC Windows networking
  4706. through an interface called "WINSOCK".
  4707.  
  4708. HTML+HTTP  -  Hypertext Markup Language + Hypertext Transport Protocol.  HTML is a page
  4709. description language and HTTP is a communications protocol that runs on top of TCP-IP.
  4710. Combined, HTML+HTTP define the basis for applications such as Mosaic and Netscape, which
  4711. are the primary tools for navigating the Internet's "World Wide Web".  HTML defines the
  4712. contents of pages which are viewed on the "Web", and HTTP defines the way an HTML
  4713. browser talks with an HTML server (refered to as an HTTPD or Web server).  It is important to
  4714. note that HTML+HTTP can be used on local area networks and private data networks, and are
  4715. rapidly becoming the standard for in-house corporate information systems which are not
  4716. necessarily Internet connected.
  4717.  
  4718. URL=http://xingtech.com/
  4719.  
  4720. ---------------------------------------------------------------------------
  4721.  
  4722. ~Subject: NVR Research Kit
  4723.  
  4724. [ Its really nice software, but its expensive !  You find the infos and ]
  4725. [ software on there ftp-server (see below !), don't forget to order a   ]
  4726. [ licence key. There are several nice and long MPEG-movies to ftp !!!   ]
  4727.  
  4728. [ If you require a demo version, please send mail to support@nvr.com    ]
  4729.  
  4730. From: Chris Jacobson <chrisj@dinghy.nvr.com>
  4731. Date: Thu, 13 May 93 10:31:32 -0700
  4732.  
  4733.  
  4734.                        North Valley Research
  4735.                        Digital Media Systems
  4736.  
  4737. North Valley Research is pleased to announce immediate availability of
  4738. a family of products for working with video and other time-based media
  4739. in a UNIX environment.  These products are the first, affordable software
  4740. products that enable the end user to take video and audio all the way
  4741. from video camera or tape to an MPEG sequence that can be played back in
  4742. real-time on most Sun SPARCstations.  Starting now until May 5th, 1993,
  4743. individual products can be purchased for $150 in quantities of 30 or
  4744. more; or under $300 for quantity 1.
  4745.  
  4746. These software products have well-designed Motif user interfaces and a
  4747. robust architectural design.  The first set of products is sold as a kit, and
  4748. consists of three user interfaces:
  4749.  
  4750.   - The Player.  This tool provides a viewing mechanism for working with
  4751.       + MPEG sequences
  4752.       + analog video (requires the Parallax XVideo board)
  4753.       + JPEG movies (requires the Parallax XVideo board with JPEG option)
  4754.  
  4755.   - The Recorder.  This tool enables the user to peruse analog material
  4756.     with an interface very similar to the Player, but in addition, allows
  4757.     you to create JPEG movies using the JPEG hardware on the Parallax XVideo
  4758.     board.
  4759.  
  4760.   - The Compressor.  This tool allows you to choose input files, specify
  4761.     the compression characteristics and finally, compress them with
  4762.     our software MPEG compression engine.
  4763.  
  4764. The MPEG playback mechanism is purely software, requires no special
  4765. framebuffer, and depending on the size of picture, the size of the window
  4766. and bandwidth of the bitstream, can run at 6 - 30 fps with synchronized
  4767. audio.  The color is dithered from 19 bits down to 7 bits,
  4768. gamma-corrected, with real-time adjustments for contrast and brightness.
  4769. The displayed window can be one or four times the size of the MPEG sequence
  4770. picture size.  For example, a sequence compressed at 320x240 can be played
  4771. back at 320x240 or 640x480 (depending on the performance of the host
  4772. computer).
  4773.  
  4774. Both the MPEG compression and playback mechanisms support:
  4775.   + variable I:P:B ratios
  4776.   + variable picture sizes from 64x48 to 320x240
  4777.   + variable and fixed bit rate
  4778.   + three motion estimation algorithms (Jain & Jain and two Exhaustive methods)
  4779.  
  4780. The MPEG compressor is relatively fast for compression that includes motion
  4781. estimation, and depending on the input stream and the selected compression
  4782. parameters, can compress a twenty second sequence in as little as an hour.
  4783.  
  4784. The JPEG record and playback is accomplished with the aid of the Parallax
  4785. XVideo board.  Recording and playback of JPEG movies is controlled by
  4786. a special software engine that always keeps the audio and video synchronized.
  4787. Recorded sequences may be "running records" from a camera or broadcast, or
  4788. assembled from a controllable video source with in and out points.
  4789. Both the Player and Recorder support Sony's ViSCA/LANC, and Pioneer 4400
  4790. disc players (and other compatible models).  VideoMedia's VLAN will be
  4791. added in the future.
  4792.  
  4793.                          Prices and Availability
  4794.                          -----------------------
  4795.  
  4796. All prices below are retail, with a special, 40%-off, introductory price
  4797. in parenthesis.  These special prices are good until May 5, 1993.
  4798.  
  4799. All products require:
  4800.     Operating System: Solaris 1.0.1
  4801.     Computer: SPARCstation 1+, 2, IPC, IPX
  4802.  
  4803. Availability: All products are available for immediate delivery
  4804. Media:        8mm tape or Quarter-inch cartridge (QIC)
  4805. Terms:        P.O. prior to shipment, net 30 days with credit
  4806.  
  4807. NVR Digital Media Player:
  4808.     Includes:     Support for audio and viewing analog video, JPEG movies
  4809.           and software MPEG.
  4810.  
  4811.     Requirements: For analog video: Parallax XVideo board
  4812.           For JPEG movies: Parallax XVideo board with JPEG option
  4813.           For MPEG playback: most any 8-bit pseudo-color frame-buffer,
  4814.               including CG3, CG4, CG6 and Parallax XVideo.
  4815.               Black-and-white monochrome support available on request.
  4816.  
  4817.     Prices:        1 floating license $495 ($297 intro)
  4818.                   10 floating license $2,000 ($1,200 intro)
  4819.                   30 floating license $4,500 ($2,700 intro)
  4820.  
  4821. NVR Digital Media Recorder
  4822.     Includes:     Support for viewing analog video and creating JPEG movies
  4823.     Requirements: Parallax XVideo board
  4824.     Price:        1 floating license $1,595 ($960 intro)
  4825.  
  4826. NVR Digital Media Compressor
  4827.     Includes:     Support for compressing JPEG movies (both audio
  4828.           and video) into MPEG.  Other input formats available on
  4829.           request.
  4830.     Requirements: No special display requirements
  4831.     Price:        1 floating license $2,495 ($1,495 intro)
  4832.  
  4833. Development Kit:
  4834.     Includes:     5 Player licenses
  4835.               1 Recorder license
  4836.               1 Compressor license.
  4837.     Requirements: As above for each product
  4838.     Price:        $3,995 ($2,395 intro)
  4839.  
  4840. Support and Maintenance:
  4841.     Includes:     software upgrades
  4842.           email support
  4843.           limited phone support
  4844.     Price:        15% of purchased product price (Free intro!)
  4845.  
  4846.                      Further Information
  4847.                      -------------------
  4848. You can reach us at:
  4849.      North Valley Research, Inc.
  4850.      15262 NW Greenbrier Parkway
  4851.      Beaverton, OR 97006
  4852.      Tel: (503) 531-5705
  4853.      Fax: (503) 690-2320
  4854.      email (sales and marketing): marketing@nvr.com
  4855.      email (technical questions): support@nvr.com
  4856.  
  4857. This and other text-only versions of our product sheets are available via
  4858. anonymous ftp to nvr.com (192.82.231.50).  Look in /pub/NVR.  We are happy
  4859. to mail paper versions of our product sheets on request.
  4860.  
  4861. If you require a demo version, please call or send mail to support@nvr.com.
  4862.  
  4863. ---------------
  4864. Todd Brunhoff
  4865. Vice President, R&D
  4866. North Valley Research
  4867.  
  4868. ---------------------------------------------------------------------------
  4869.  
  4870. ~Subject: Demo of NVR Digital Media Development Kit
  4871.  
  4872.     $Revision: 1.2 $
  4873.     $Date: 1994/08/06 19:49:42 $
  4874.  
  4875. We are pleased to make available another release of NVR's digital media
  4876. development kit, version 2.0.3.  You should already have a license key.
  4877. If you don't, please contact us at support@nvr.com.
  4878.  
  4879. This version has several fixes for bugs and some important improvements
  4880. over version 2.0.2.  In particular:
  4881.    - Support added for Alias PIX files
  4882.    - Support added for playing XING sequences that have illegal syntax
  4883.      (extra picture info and non-increasing temporal references)
  4884.    - 400% speed improvement for RGB --> Y/Cr/Cb conversion in the compressor
  4885.      and imageop (you'll want this if you are compressing any rgb files,
  4886.      such as SGI rgb files).
  4887.    - the deinterlace operator (in imageop and the compressor) was broken
  4888.      in version 2.0.2.  You would only notice this if you are compressing
  4889.      abekas or other interlaced files.
  4890.  
  4891. The 2.0.x version is a significant improvement over our last major release,
  4892. 1.0.4.  Briefly, this software offers:
  4893.    - MPEG video compression
  4894.    - image processing and compatibility with many image file formats,
  4895.      including JPEG, TIFF, SGI RGB and others.
  4896.    - MPEG audio compression
  4897.    - compatibility with a variety of audio files, including AIFF, AIFC
  4898.      Sun Audio and Parallax movie files.
  4899.    - MPEG system multiplexing
  4900.    - real-time, synchronized playback of any combination of video and audio
  4901.      files.   This means you can play back MPEG video files with AIFF, or
  4902.      you can play back MPEG system streams containing MPEG video and
  4903.      MPEG audio.  And everything in between
  4904.    - a variety of tools for converting image file formats and audio file
  4905.      formats.
  4906.    - a real-time video/audio recording program (Sun and Parallax hardware
  4907.      required)
  4908.  
  4909. The software package is available in several pieces via anonymous ftp to
  4910.  
  4911. URL=ftp://nvr.com/pub/NVR-software/
  4912.     [192.82.231.50]
  4913.  
  4914. Look in /pub/NVR-software for the license 
  4915. agreement and README file.  It also contains about 25 megabytes of data and 
  4916. software, so first fetch the README file and read it to decide what you 
  4917. need.  If you only need the software, you should get one of
  4918.  
  4919.     SGI-Product-2.0.3.tar.Z
  4920.     Sun-Product-2.0.3.tar.Z
  4921.  
  4922. depending on the kind of hardware you have.
  4923.  
  4924. Turning on the software
  4925. -----------------------
  4926. If you already have a demo key from us, simply install the software 
  4927. described above and copy the file $NVRHOME/adm/keys/demokeys from the 
  4928. previous version into the same place in the new version.  Then type:
  4929.  
  4930.     % installkeys
  4931.  
  4932. This will give enable the software as before.  If you don't have a demo
  4933. key and would like one, please contact us at support@nvr.com.
  4934. ---------------
  4935. internet: toddb@nvr.com                                             c--Q Q
  4936. US:       Todd Brunhoff; North Valley Research;                         `
  4937.           15262 NW Greenbriar Pkwy; Beaverton, OR  97006                -
  4938. Phone:    (503) 690-2357
  4939. Fax:      (503) 690-2320
  4940.  
  4941.  
  4942. ---------------------------------------------------------------------------
  4943.  
  4944. ~Subject: How will I get the NVR-Software ?
  4945.  
  4946. From: Todd Brunhoff <toddb@nvr.com>
  4947. Date: Tue, 18 May 93 09:23:26 -0700
  4948.  
  4949. The price list and text-only versions of our product sheets are available via
  4950. anonymous ftp to
  4951.  
  4952. URL=ftp://nvr.com/pub/NVR-data-sheets/
  4953.     [192.82.231.50].
  4954.  
  4955. Look in /pub/NVR-data-sheets.  
  4956. If you need glitzy paper versions to convey credibility, we are
  4957. happy to mail our product sheets on request.
  4958.  
  4959. The demonstration software package comes in several pieces via anonymous ftp to
  4960.  
  4961. URL=ftp://nvr.com/pub/NVR-software/
  4962.     [192.82.231.50)
  4963.  
  4964. Look in /pub/NVR-software for the license agreement
  4965. and README file.  Briefly you will need:
  4966.     /pub/NVR-software/Manual.evenpages-1.0.2.ps.Z
  4967.     /pub/NVR-software/Manual.oddpages-1.0.2.ps.Z
  4968.     /pub/NVR-software/Product-1.0.4.tar.Z
  4969.     /pub/NVR-software/README
  4970. and some selection from
  4971.     /pub/contrib/mpeg and /pub/contrib/jpeg
  4972. depending on the kind of hardware you have.
  4973.  
  4974. If you get our software via ftp, send us an email note and we will give you
  4975. a demo license key so you can run it.
  4976. ---------------
  4977. internet: toddb@nvr.com                                             c--Q Q
  4978. US:       Todd Brunhoff; North Valley Research;                         `
  4979.           15262 NW Greenbriar Pkwy; Beaverton, OR  97006                -
  4980. Phone:    (503) 531-5707
  4981. Fax:      (503) 690-2320
  4982.  
  4983. ===========================================================================
  4984.  
  4985. ~Subject: SECTION 3. - FREE AVAILABLE SOFTWARE
  4986.  
  4987. The named tools are:
  4988.  
  4989. SUBSECTION - DOS
  4990.     layr_100
  4991.     mpeg2ppm
  4992.     vmpeg
  4993.     cmpeg
  4994.     dmpeg
  4995.     secmpeg
  4996.     mpegstat
  4997.     enc11dos
  4998.     pvrg MPEG
  4999. SUBSECTION - Windows
  5000.     XingIt
  5001.     mpgaudio
  5002. SUBSECTION - WINDOWS-NT
  5003.     mpeg2ply
  5004.     mpegplay
  5005. SUBSECTION - OS/2
  5006.     mp
  5007. SUBSECTION - X-WINDOWS and UNIX
  5008.     Berkeley's MPEG Tools
  5009.     MPEG-1 Video Software Encoder
  5010.     MPEG Video Software Decoder
  5011.     MPEG Video Software Analyzer
  5012.     MPEG Blocks Analyzer
  5013.     MPEG Video Software Statistics Gatherer
  5014.     mpegstat
  5015.     mplex
  5016.     xmplay
  5017.     xplayer
  5018.     xmpeg.tk
  5019.     mpeg2encode / mpeg2decode
  5020.     layr_100
  5021.     mpegaudio
  5022.     maplay
  5023.     Scanning MPEG's ...
  5024.     MPEG decoder...
  5025.     MPEGTool
  5026.     What is "SECMPEG" ?
  5027.     PVRG-MPEG Codec
  5028.     wdgt
  5029. SUBSECTION - VMS
  5030.     vms MPEG
  5031. SUBSECTION - MacIntosh
  5032.     Sparcle
  5033.     Qt2MPEG
  5034.     Audio on Macintosh ?!
  5035. SUBSECTION - Atari
  5036. SUBSECTION - Amiga
  5037.     MPEG2DCTV
  5038. SUBSECTION - NeXT
  5039.     MPEG_Play.app
  5040.     mpegnext
  5041. SUBSECTION - SGI
  5042.  
  5043. ---------------------------------------------------------------------------
  5044.  
  5045. ~Subject: SUBSECTION - DOS
  5046.  
  5047. ---------------------------------------------------------------------------
  5048.  
  5049. ~Subject: layr_100
  5050.  
  5051. From: "Matthias Hanft" <HFT@iis.fhg.de>
  5052. Date:          Thu, 23 Jun 1994 18:10:28 +0200
  5053. Subject:       SUN and PC Version of MPEG Audio Codec Shareware
  5054.  
  5055. Shareware encoder/decoder for Sun workstations and PC's
  5056.  
  5057.  The encoder takes about 5 minutes for encoding of 1 minute of stereo audio
  5058.  data on a SPARC station 10. The decoder works in real time.
  5059.  
  5060. Availability of the shareware packages:
  5061.  
  5062. -  via anonymous ftp from
  5063.  
  5064. URL=ftp://fhginfo.fhg.de/pub/layer3/
  5065.     [153.96.1.4]
  5066.  
  5067.  You may download our Layer-3 audio software package from the
  5068.  directory /pub/layer3. You will find the following files:
  5069.  For IBM PCs:
  5070.    layer3.txt    a short description of the files found in layer3.zip
  5071.    layer3.zip    encoder, decoder, documentation and a sample bitstream
  5072.    layer3nb.txt  a short description of the files found in layer3nb.zip
  5073.    layer3nb.zip  encoder, decoder and documentation (no bitstream)
  5074.    bitstr.l3     sample bitstream
  5075.  For SUN workstations:
  5076.    l3sun.txt     a short description of the files found in l3sun.zip
  5077.    l3sun.zip     encoder, decoder, documentation and a sample bitstream
  5078.    l3sunnb.txt   a short description of the files found in l3sunnb.zip
  5079.    l3sunnb.zip   encoder, decoder and documentation (no bitstream)
  5080.    bitstr.l3     sample bitstream
  5081.  
  5082. -  via direct modem download (up to 14.400 bps)
  5083.  
  5084.     Modem telephone number  : +49 911 9933662           Name: FHG
  5085.     Packet switching network: (0) 262 45 9110 10290     Name: FHG
  5086.     (For the telephone number, replace "+" with your appropriate
  5087.     international dial prefix, e.g. "011" for the USA.)
  5088.     Follow the menus as desired.
  5089.  
  5090. -  via shipment of diskette (only including registration)
  5091.  
  5092.  You may order a diskette directly from:
  5093.  
  5094.  Mailbox System Nuernberg (MSN)
  5095.  Hanft & Hartmann
  5096.  Innerer Kleinreuther Weg 21
  5097.  D-90408 Nuernberg
  5098.  Germany
  5099.  
  5100.  Please note: MSN will only ship a diskette if they get paid for the
  5101.  registration fee before. The registration fee is 85 Deutsche Mark
  5102.  (plus sales tax, if applicable) for one copy of the package. The
  5103.  preferred method of payment is via credit card. Currently, they can
  5104.  accept VISA, Master Card / Eurocard / Access credit cards.
  5105.  
  5106.  You may reach MSN also via Internet: msn@iis.fhg.de
  5107.                      or via Fax: +49 911 9933661
  5108.                      or via BBS: +49 911 9933662        Name: FHG
  5109.                      or via X25: 0262 45 9110 10290     Name: FHG
  5110.                      (e.g. in USA, please replace "+" with "011")
  5111.  
  5112. - via email
  5113.  
  5114.  You may get our shareware also by a direct request to msn@iis.fhg.de.
  5115.  In this case, the shareware is split into about 30 small uuencoded
  5116.  parts...
  5117.  
  5118. --- cut here ---
  5119.  
  5120. The file l3v099c_sun.tar is the tarred version of the
  5121.  
  5122.   shareware ISO-MPEG Audio Layer 3 software only Encoder and Decoder
  5123.   Version 0.99c for SUN work stations.
  5124.   copyright Fraunhofer - IIS 1994
  5125.  
  5126. (the file l3v099c_sun.tar.gz is compressed with GNU zip)
  5127.  
  5128. Here are the highlights of the Layer3 shareware package:
  5129.  - evaluate highest quality perceptual audio compression technique
  5130.    available today
  5131.  - software only encoder and decoder implementations
  5132.  - implements ISO/MPEG Audio standard ISO/IEC IS 11172-3, Layer 3
  5133.       (restriction: no support of Layer I and II, no realtime)
  5134.  - wide range of compression ratios including
  5135.        6:1   fully transparent quality
  5136.       11:1   64 kbps per channel, very high quality
  5137.       16:1   still better than your average 16 bit 44.1 kHz sound card
  5138.  - music data is input in raw format (16 bit signed integer)
  5139.  - 44.1kHz sampling frequency (version 1.0 supports also 32 kHz and 48 kHz)
  5140.  - packed bit stream conforming to ISO/MPEG Layer III
  5141.  - output of decoder is in raw format (16 bit signed integer)
  5142.  - optional .WAV header for decoder output data. Resulting music files
  5143.    can be played with Windows Media Player.
  5144.  - written by the very same people at Fraunhofer-IIS who did the
  5145.    Layer 3 codecs for the ISO and CCIR tests (best sound quality at
  5146.    low bit rates at all listening tests).
  5147.  - commercial real time products for encoding and/or decoding of
  5148.    ISO/MPEG Layer 3 auddio are available. Contact one of the companies
  5149.    listed in the file info.txt.
  5150.  
  5151. The package consists of the following files
  5152.  
  5153.    l3enc          encoder program
  5154.    l3dec          decoder program
  5155.    bitstr.l3      demo layer 3 bitstream (128 kBit/s, stereo, 44.1 kHz)
  5156.    manual.txt     instructions for encoder and decoder programs
  5157.    register.txt   information on registration. PLEASE READ THIS!
  5158.    info.txt       infos on ISO MPEG Layer III and Layer III products
  5159.    readme.txt     this file
  5160.  
  5161. The song used for bitstr.l3 is named "funky" and was composed and
  5162. arranged by Juergen Herre. "Funky" is copyright Juergen Herre 1994.
  5163.  
  5164. You may use "Funky" for all evaluation purposes of this shareware product.
  5165. You may not use "Funky" for commercial purposes (e.g. radio broadcasting).
  5166.  
  5167. You may also download l3v099cn_sun.tar.Z (l3v099cn_sun.tar.gz) which consists
  5168. of all files found in l3v099c_sun.tar (l3v099c_sun.tar.gz) minus bitstr.l3
  5169. (Bitstr.l3 is about 1 MB of data for 1 minute of stereo music at 128 kBit/s,
  5170. 44.1 kHz sampling frequency).
  5171.  
  5172. bitstr.l3 is also available seperately.
  5173.  
  5174. All brand names are registered trade marks of their respective owners.
  5175.  
  5176. --- cut here ---
  5177.  
  5178. Regards
  5179.  
  5180. Matthias Hanft
  5181.  
  5182. --
  5183. * Matthias Hanft * FhG-IIS * Am Weichselgarten 3 * D-91058 Erlangen *
  5184. * Phone: +49-9131-776-361 *** Fax: 399 *** E-Mail: hanft@iis.fhg.de *
  5185.  
  5186. ---------------------------------------------------------------------------
  5187.  
  5188. Subject: MPEG1-IIS
  5189.  
  5190. Public C source code for MPEG1 audio decoder available now
  5191.  
  5192. The source code for the MPEG1 audio decoder layer 1, 2 and 3 is
  5193. now available on fhginfo.fhg.de (153.96.1.4).
  5194.  
  5195. There are two files:
  5196.    mpeg1_iis.tar.Z     (Unix: lines seperated by line feed only)
  5197.    mpeg1iis.zip        (PC: lines seperated by carriage return and line feed)
  5198.  
  5199. They are in the directory /incoming now but will be moved to the directory
  5200. /pub/layer3/public_c.
  5201.  
  5202. Please note that the public C code for the decoder is *not* identical to
  5203. the shareware provided by Fraunhofer IIS.
  5204.  
  5205. However we at Fraunhofer IIS did check that the layer 3 part of the public
  5206. C source decoder works correctly. (As usual this does not imply any 
  5207. warranties).
  5208.  
  5209. popp@iis.fhg.de (Harald Popp)
  5210.  
  5211. ---------------------------------------------------------------------------
  5212.  
  5213. ~Subject: mpeg2ppm
  5214.  
  5215. This is the MPEG to PPM converter running under DOS. Its based
  5216. on the MPEG-decoder called "mpeg_play" by the Berkeley Research
  5217. Group. The basic idea was coming from the PPM-patch by Jef
  5218. Poskanzer. Many thanks to both.
  5219.  
  5220. SHAREWARE
  5221. ---------
  5222.  
  5223. MPEG2PPM is inexpensive shareware. If you are continuing using
  5224. it after a 30 day trial-period, please send a letter containing
  5225. the filled and signed registration-form and the little donation
  5226. of 10 $ or 15 DM in cash to the adress below.
  5227.  
  5228. ATTENTION: The dots the shareware version of MPEG2PPM produces
  5229. are just delay, to force you to register.
  5230.  
  5231. ATTENTION: A registration is recommended for commercial use.
  5232.  
  5233. ATTENTION: The full-licenced version is restricted to a local
  5234.            area netword (company) or a privat single host.
  5235.  
  5236. MPEG2PPM will  decode  a  (video-only)  MPEG-I-stream and
  5237. extract the rebuild frames as PPM-files (Portable Pixmap).
  5238. The  extracted  frames will be numbered starting from zero
  5239. (0), the first part of the filename is  derived  from  the
  5240. original MPEG-stream, the files extension will be .PPM.
  5241.  
  5242. The final PPM-files will be in 24-bit-format.
  5243.  
  5244. MPEG2PPM  expects  MPEG-1  video  streams only. It can not
  5245. handle multiplexed MPEG streams  or  video+audio  streams.
  5246. The  converter  uses  the  paris  entropy coding table set
  5247. (which I believe to be the MPEG-1 standard).
  5248.  
  5249. MPEG2PPM was developed by
  5250.  
  5251. PHADE Software
  5252. Inh. Frank Gadegast
  5253. Leibnizstr. 30
  5254. 10625 Berlin GERMANY
  5255.  
  5256. phade@contrib.de
  5257.  
  5258. ---------------------------------------------------------------------------
  5259.  
  5260. ~Subject: vmpeg
  5261.  
  5262. VMPEG is now out in Version 1.5, Stefan sold the full version,
  5263. but the "Lite" version is still available to the public, he included
  5264. a nice button player interface, audio (!!), systemstream and CD support.
  5265. It's just the best MPEG-utility for the end-user ever seen, yo !
  5266.  
  5267. From: stefan@lis.e-technik.tu-muenchen.de (Stefan Eckart)
  5268.  
  5269.  
  5270.                               VMPEG V1.2
  5271.                        DOS / Windows MPEG player
  5272.                            by Stefan Eckart
  5273.  
  5274.                             September 1994
  5275.  
  5276. 1. Features
  5277. ===========
  5278.  
  5279.  - full MPEG-1 video standard (ISO 11172-2): I,P,B frames of arbitrary size
  5280.  
  5281.  - plays system layer (ISO 11172-1) files (audio is discarded)
  5282.  
  5283.  - high speed: e.g. 21 frames/s on a 386DX/33 for a 160x120 I frame
  5284.                sequence (mjackson.mpg)
  5285.  
  5286.  - supports VGA and a variety of SVGAs
  5287.  
  5288.  - display options: 4x4 ordered dither normal size (8 bit)
  5289.                     4x4 ordered dither double size (8 bit)
  5290.                     grayscale (8 bit)
  5291.                     true color (24 bit)
  5292.  
  5293.   - requires:
  5294.  
  5295.     - '386,'486 or '586 processor (no '286)
  5296.     - 4 MB RAM
  5297.     - VGA or Super VGA
  5298.     - Windows version: Windows 3.1, Win32s and optionally WinG
  5299.  
  5300.  
  5301. 2. Overview
  5302. ===========
  5303.  
  5304. VMPEG is a fast decoder / viewer for MPEG encoded video sequences (.mpg
  5305. files). MPEG (Moving Pictures Expert Group) is a video compression algorithm
  5306. standardized by the International Organization for Standardization (ISO) and
  5307. the International Electrotechnical Commision (IEC) as ISO/IEC IS 11172. Main
  5308. application of MPEG is the storage and retrieval of video on/from Compact
  5309. Disk at a rate of about 1.5 Mbit/sec.
  5310.  
  5311. VMPEG can play MPEG system layer streams containing both video and audio.
  5312. Most streams from CD-ROM (Video-CD) are of this type. The audio stream is
  5313. discarded by the decoder. VMPEG automatically detects whether the file is a
  5314. video compression layer or a system layer file. I have also included a small
  5315.  
  5316. Archive-name: mpeg-faq/part5
  5317. Last-modified: 1995/06/07
  5318. Version: v 4.0 95/06/07
  5319. Posting-Frequency: bimonthly
  5320.  
  5321. utility (MPGSPLIT) which extracts the video and audio streams from a system
  5322. layer stream into separate files (cf. MPGSPLIT.DOC).
  5323.  
  5324. The DOS version of VMPEG is compiled with the GNU C compiler (gcc) into '386
  5325. code and runs under the DOS extender GO32 by DJ Delorie which is included in
  5326. the archive file. The DOS version of VMPEG cannot be run from Windows.
  5327.  
  5328. The Windows version of VMPEG is the first release for Windows. It is not as
  5329. thoroughly tested as the DOS version but already seems to be reasonably
  5330. stable. Please feel free to report any bugs you encounter to my email
  5331. address. The Windows version requires Windows 3.1 and the free Windows
  5332. extensions MS Win32s (32 bit support) and optionally WinG (screen output
  5333. acceleration). These packages are available by anonymous ftp from (currently)
  5334.  
  5335. URL=ftp://ftp.microsoft.com:/developr/win32dk/sdk-public/Win32s115a.Zip
  5336. URL=ftp://ftp.microsoft.com:/developr/drg/WinG/WINGBT.ZIP
  5337.  
  5338. and perhaps somewhere on CompuServe.
  5339.  
  5340.  
  5341. 3. Installation
  5342. ===============
  5343.  
  5344. 3.1 DOS version
  5345. ---------------
  5346.  
  5347. - You need at least a '386 with a VGA and 512 KB of RAM. 4 MB are strongly
  5348.   recommended. XT, AT, EGA and CGA are not supported. A '387 is not required
  5349.   nor does it increase speed. VMPEG doesn't use floating point.
  5350.  
  5351. - You should leave about 2 MB of RAM (XMS) unused: if you have, say,
  5352.   a 4 MB system you shouldn't reserve more than 2 MB for a RAM drive.
  5353.   Otherwise the DOS extender would start swapping memory pages from and to
  5354.   disk. This would slow down the program, even if swapping to a RAM drive.
  5355.  
  5356. - If you have installed EMM386 make sure you don't have specified the
  5357.   'noems' option in your config.sys file.
  5358.  
  5359. - Create a subdirectory for installation:
  5360.  
  5361.   md \vmpeg
  5362.   cd \vmpeg
  5363.  
  5364. - Unzip the archive into this subdirectory:
  5365.  
  5366.   pkunzip -d vmpeg12.zip
  5367.  
  5368. - Edit VMPEG.BAT and VMPEG24.BAT; you probably have to change drive
  5369.   and/or path specifications and to select a suitable graphics driver
  5370.   (see paragraph 4).
  5371.  
  5372.  
  5373. 3.2 Windows version
  5374. -------------------
  5375.  
  5376. - Install Win32s and (optionally) WinG. These packages come with their own
  5377.   installation instructions. Basically you have to run the setup program
  5378.   supplied with them.
  5379.  
  5380.   Installation of Win32s copies a couple of files (w32sys.dll, win32s.ini,
  5381.   win32s16.dll, winmm16.dll) to the Windows system directory and creates a
  5382.   WIN32S subdirectory with additional files. It also adds two entries
  5383.   (for winmm16.dll and w32s.386) to the system.ini file in the Windows
  5384.   directory. You can deinstall Win32s by removing these files and restoring
  5385.   your original system.ini file (saved in system.old by the setup program).
  5386.  
  5387.   Installation of WinG is optional. I have included two versions of VMPEG,
  5388.   one with WinG calls (VMPEGWIN.EXE) and one without (VMPEGNWG.EXE).
  5389.   The WinG version is faster, but the difference is only notable for
  5390.   large (CIF/SIF) MPEGs (may depend on your SVGA).
  5391.  
  5392.   WinG adds several files (wing.dll, wing32.dll, wingde.dll, wingdib.drv,
  5393.   wingpal.wnd, dva.386) to the system directory and adds an entry for DVA.386
  5394.   to your system.ini file. To deinstall WinG simply remove this entry from
  5395.   system.ini.
  5396.  
  5397.   If you start VMPEG (or any other program using WinG) for the first time,
  5398.   a performance test window appears which adapts and optimizes WinG for the
  5399.   VGA in your PC. This takes a while (about 3 minutes on my computer), don't
  5400.   despair...
  5401.  
  5402. - Create a subdirectory for installation:
  5403.  
  5404.   md \vmpeg
  5405.   cd \vmpeg
  5406.  
  5407. - Unzip the archive into this subdirectory:
  5408.  
  5409.   pkunzip -d vmpeg12.zip
  5410.  
  5411.   if you don't need the DOS version, you can delete vmpeg, go32.exe, the
  5412.   drivers subdirectory and the vmpeg*.bat batch files
  5413.  
  5414. - You can start the program (vmpegwin.exe / vmpegnwg.exe) either from the
  5415.   file manager or from the program manager (File->Run menu item) or you can
  5416.   define a program entry in the program manager (File->New menu item).
  5417.  
  5418. - both VMPEG and the Win32s libraries need a lot of memory (about 3-5 MB in
  5419.   total), and you may therefore have to increase the size of the swap file.
  5420.   4 MB of RAM are sufficient, however, to run the program without swapping
  5421.   (except during program startup).
  5422.  
  5423.  
  5424. 4. Graphics Drivers (DOS version)
  5425. =================================
  5426.  
  5427. The DRIVERS subdirectory contains a set of graphics drivers for different
  5428. Super VGAs. Select the one that matches your graphics card by editing the
  5429. file VMPEG.BAT (for 8 bit display). If none of the drivers work, you may try
  5430. to use the (go32 internal) VESA driver and a TSR VESA BIOS extension. A
  5431. collection of such drivers is available at
  5432.  
  5433. URL=ftp://oak.oakland.edu/pub/msdos/graphics/vesadrv2.zip
  5434.  
  5435. and on all other SimTel mirrors.
  5436.  
  5437. True color support requires VESA BIOS. It works for my configuration (a
  5438. Cirrus Logic GD5422 based card with VESA BIOS) and should work for most other
  5439. 'well behaved' boards as well. You may have to adjust the -y option in the
  5440. last line of VMPEG24.BAT. The number indicates the length of each scanline.
  5441. This is usually either 1920 or 2048. If the frames appear scattered over the
  5442. screen, the setting is probably wrong... If you get incorrect colors (red
  5443. sky, blue faces) you have a card with reversed RGB order. Simply replace the
  5444. -y... by a -Y... to fix this.
  5445.  
  5446.  
  5447. 5. Troubleshooting
  5448. ==================
  5449.  
  5450. DOS version:
  5451.  
  5452. If you get a message about the CPU not being in Real Mode, you have to remove
  5453. the noems option from the EMM386.EXE (or any other EMS emulator) line in your
  5454. CONFIG.SYS.
  5455.  
  5456. Windows version:
  5457.  
  5458. If you get the message 'Can't find WING32.DLL' you don't have WinG properly
  5459. installed. Either install WinG or use VMPEGNWG.EXE instead.
  5460.  
  5461. If starting VMPEGWIN briefly switches to text mode and displays the message
  5462. 'This program cannot be run in DOS mode', Win32s is not installed properly.
  5463.  
  5464. If you get 'Out of Memory' errors, you have to increase the size of your
  5465. swap file (from the control panel).
  5466.  
  5467.  
  5468. 6. Command Line Options
  5469. =======================
  5470.  
  5471. The following command line options are valid for both DOS and Windows
  5472. versions. To specify options to the Windows version, you have to run it
  5473. from the program manager (File->Run menu). Of course you can set all
  5474. these options interactively after starting vmpegwin (without command
  5475. line options).
  5476.  
  5477.   vmpeg [options] input.mpg
  5478.   vmpeg24 [options] input.mpg
  5479.   vmpegwin [options] input.mpg
  5480.   vmpegwng [options] input.mpg
  5481.  
  5482. options:
  5483.  
  5484.   -l  loop the sequence (infinitely until you press a key)
  5485.  
  5486.   -x1 skip B frames
  5487.   -x2 skip B and P frames, i.e. only I frames are displayed; you should
  5488.       use this option for I-frame-only sequences (including Xing compatible
  5489.       streams) to make the program run faster (as it doesn't have to manage
  5490.       reference frames)
  5491.  
  5492.   -d0 (default) ordered 4x4 dither
  5493.   -d1 grayscale
  5494.   -d2 similar to -d0 but display magnified by a factor of 2
  5495.  
  5496.       True color mode is selected by using vmpeg24 instead of vmpeg. In this
  5497.       case the -d switch isn't effective.
  5498.  
  5499. DOS version only:
  5500.  
  5501.   -in displace output by n pixel in horizontal direction
  5502.   -jn displace output by n pixel in vertical direction
  5503.  
  5504.       VMPEG centers the MPEG on the screen. If the frame is larger than
  5505.       the screen you can use the -i and -j options to pan the visible
  5506.       area. positive n shifts to the right or bottom, negative n to the
  5507.       left or upwards.
  5508.  
  5509.   -zn reduce display speed. This is done by a counting loop, so you
  5510.       have to experiment until you get the speed you want.
  5511.  
  5512.  
  5513. The program can be terminated by pressing an arbitrary key (DOS version).
  5514.  
  5515.  
  5516. 7. Remarks
  5517. ==========
  5518.  
  5519. Please report bugs (don't forget to mention which version of VMPEG you are
  5520. using!) to my email address:
  5521.  
  5522.   stefan@lis.e-technik.tu-muenchen.de
  5523.  
  5524. or by mail to:
  5525.  
  5526.   Stefan Eckart
  5527.   Kagerstr. 4
  5528.   D-81669 Muenchen, Germany
  5529.  
  5530.  
  5531. 8. Acknowledgements, Copyrights
  5532. ===============================
  5533.  
  5534. This program comes without any warranty. Your are using it at your own
  5535. risk. VMPEG is copyrighted software (C) Stefan Eckart, 1994. You may
  5536. use, copy and distribute this program without restrictions but only in
  5537. unmodified form and without charging money for it.
  5538.  
  5539. GO32.EXE, DRIVERS\*.GRD:
  5540.  
  5541.    Copyright (C) DJ Delorie
  5542.                  24 Kirsten Ave
  5543.                  Rochester NH  03867-2954
  5544.  
  5545. These files are part of DJGPP which is available from
  5546.  
  5547.     host:      oak.oakland.edu (or another SimTel mirror)
  5548.     login:     ftp
  5549.     password:  send your e-mail address
  5550.     directory: /pub/msdos/djgpp
  5551.  
  5552. other DRIVERS:
  5553.  
  5554.  Copyright (C) 1991 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-2954
  5555.  Copyright (C) 1992 Csaba Biegl, 820 Stirrup Dr, Nashville, TN 37221
  5556.  
  5557. VMPEG:
  5558.  
  5559. The library VMPEG is linked with is
  5560.  
  5561.  Copyright (c) Regents of the University of California.
  5562.  
  5563.  acknowledgement:  ``This product includes software developed by the
  5564.  University of California, Berkeley and its contributors''
  5565.  
  5566.  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
  5567.  * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
  5568.  * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  5569.  
  5570. The program is compiled with GNU GCC, the C compiler of the Free
  5571. Software Foundation (FSF), Inc. 675 Mass Ave, Cambridge, MA 02139, USA.
  5572. VMPEG does not contain code covered by the FSF General Public License.
  5573.  
  5574.  
  5575. 9. Known Bugs
  5576. =============
  5577.  
  5578. Interframe coded macroblocks theoretically can experience wrap-around
  5579. (255<->0). This happens rarely enough to live with it (fixing would
  5580. reduce speed for all sequences).
  5581.  
  5582. Accuracy of the IDCT does not meet the requirements of IEEE 1180-1990. It is,
  5583. however, a reasonable trade-off between speed and image quality.
  5584.  
  5585. Display should be synchronized to the frame rate signalled in the sequence
  5586. header.
  5587.  
  5588. The program should use VESA BIOS supplied information instead of the -y
  5589. option.
  5590.  
  5591.  
  5592. 10. References
  5593. ==============
  5594.  
  5595. 1. Coding of moving pictures and associated audio for digital storage
  5596.    media up to about 1,5 Mbit/s, International Standard ISO/IEC
  5597.    IS 11172, 1993.
  5598.  
  5599. 2. Frequently Asked Questions (FAQ) of the alt.binaries.pictures
  5600.    and comp.compression newsgroup: contains an introduction to MPEG.
  5601.  
  5602. 3. Documentation of the PVRG MPEG software: a thorough overview
  5603.    covering many aspects of MPEG.
  5604.  
  5605. 4. Documentation of the MSSG MPEG-2 codec (mpeg2codec, see below).
  5606.  
  5607.  
  5608. Appendix A: Related Software
  5609. ============================
  5610.  
  5611. This list is probably incomplete, but it's all I'm aware of. Of course
  5612. there are programs for other systems as well (Mac, Amiga etc.).
  5613.  
  5614. mpeg2codec     MPEG-1 and MPEG-2 codec from the MPEG Software Simulation Group
  5615.                Authors: Stefan Eckart, C. Fogg, C. Aeyung, S. Papuc
  5616.                Includes source code for Unix X11 and Windows (Win32s / NT)
  5617.                and compiled versions for PC.
  5618.  
  5619. URL=ftp://ftp.netcom.com/pub/cfogg/mpeg2/ or
  5620. URL=ftp://ftp.netcom.com/pub/cf/cfogg/mpeg2/
  5621.  
  5622. mpeg2play      a speed optimized version of the decoder from mpeg2codec
  5623.  
  5624. URL=ftp://ftp.netcom.com/pub/cfogg/mpeg2/mpeg2play/
  5625.  
  5626. mpeg_play      MPEG Video Software Decoder (Version 2.0; Jan 27, 1993)
  5627.                Authors: Lawrence A. Rowe, Ketan Patel, and Brian Smith
  5628.                Computer Science Division-EECS, Univ. of Calif. at
  5629.                Berkeley
  5630.  
  5631. URL=ftp://toe.cs.berkeley.edu/pub/multimedia/mpeg/mpeg-2.0.tar.Z
  5632.  
  5633. cmpeg          an MPEG encoder for the PC (DOS, 640K, no '386 req.)
  5634.                for Targa, PBMPLUS and Alchemy RAW images
  5635.                Author: Stefan Eckart
  5636.  
  5637. URL=ftp://garbo.uwasa.fi:/pc/graphics/cmpeg10.zip
  5638.  
  5639. dmpeg          MPEG decoder and player for the PC (DOS, 640K, VGA)
  5640.                Author: Stefan Eckart
  5641.  
  5642. URL=ftp://garbo.uwasa.fi/pc/graphics/dmpeg11.zip
  5643.  
  5644. mpegwin        Port of mpeg_play for MS-Windows
  5645.                by: Michael Simmons, msimmons@ecel.uwa.edu.au
  5646.                toe.cs.berkeley.edu:/pub/multimedia/mpeg/Ports/mpegw*
  5647.                (HiColor & TrueColor support, Shareware)
  5648.  
  5649. mpeg.exe       DOS MPEG player from Xing Technologies (XingIt V2.1)
  5650.                (high speed, but decodes only a small subset of the
  5651.                 MPEG standard, audio (.WAV,.MP2) support, Windows)
  5652.                mpegview.zip (available from many ftp sites)
  5653.  
  5654. MPEGv1.1/1.2alpha
  5655.                MPEG Software Encoder/Decoder
  5656.                Authors: Portable Video Research Group (PVRG)
  5657.  
  5658. URL=ftp://havefun.stanford.edu:/pub/mpeg/
  5659.     MPEGv*.tar.Z
  5660.  
  5661. disp
  5662.                a display program for pictures and animations
  5663.                including MPEG (based on mpeg_play)
  5664.                contains additional drivers that can also be used
  5665.                with VMPEG.
  5666.                Author: Jih-Shin Ho, u7711501@bicmos.ee.nctu.edu.tw
  5667.  
  5668. URL=ftp://NCTUCCCA.edu.tw/PC/graphics/disp/
  5669.                
  5670.  
  5671.  
  5672. APPENDIX B: MPEG files
  5673. ======================
  5674.  
  5675. Two good sources for MPEG files:
  5676.  
  5677.   s2k-ftp.cs.berkeley.edu:/pub/multimedia/mpeg/movies
  5678.   havefun.stanford.edu:/pub/mpeg
  5679.  
  5680. High quality MPEGs you simply can't afford to miss:
  5681.  
  5682.   tennis.mpg
  5683.   flowg.mpg
  5684.   bike.mpg
  5685.  
  5686.  
  5687. --
  5688. Stefan Eckart, stefan@lis.e-technik.tu-muenchen.de
  5689. Kagerstr. 4, D-81669 Munich, Germany.
  5690.  
  5691. Stefan Eckart, stefan@lis.e.technik.tu-muenchen.de
  5692.  
  5693. ---------------------------------------------------------------------------
  5694.  
  5695. ~Subject: cmpeg
  5696.  
  5697. Stefan Eckart's CMPEG, another Freeware MPEG maker!
  5698.  
  5699. Here is another MPEG creator!   This one supports 8086+, so if you 
  5700. thought you couldn't make MPEGs, boy were YOU wrong. :-)   Can make 
  5701. Xing (I-frame) or normal MPEGs (which contain I, P & B frames, and 
  5702. offer better compression).   Be full aware of the fact that the 
  5703. slower your machine, the longer it will take to compress your files 
  5704. into an MPEG animation (does this need to be said?).  (Don't expect 
  5705. eyeball-charring performance from your 286, please..)
  5706.  
  5707. Due to its small size, I am offering CMPEG here at a2i.  Access info:
  5708.  
  5709. ---------------------------------------------------------------------------
  5710.  
  5711. ~Subject: dmpeg
  5712.  
  5713. Public Domain MPEG decoder by Stefan Eckart  June 1993
  5714.  
  5715. 1. Features
  5716.  
  5717. DMPEG is another MPEG decoder/player for the PC:
  5718.  
  5719.  - decodes (nearly) the full MPEG video standard
  5720.    (I,P,B frames, frame size up to at least 352x288)
  5721.  - can save decoded sequence in 8 or 24bit raw file for
  5722.    fast off-line display (two pass mode)
  5723.  - optional on-screen display during decoding
  5724.  - several dithering options for 8 bit displays:
  5725.      ordered dither, Floyd-Steinberg, grayscale
  5726.  - selectable color-space
  5727.  - runs under DOS, 640KB RAM, no MS-Windows or '386 required
  5728.  - compact (small code / small data models, 16 bit arithmetic)
  5729.  - supports VGA, many Super-VGAs (including VESA) and
  5730.    some TrueColor SVGAs
  5731.  
  5732. DMPEG is both an MPEG viewer AND converter.  When viewing, it is important
  5733. to note that it is markedly slower than the Xing player.  That is, unless
  5734. you CONVERT the MPEG to DMPEG's proprietary RAW format.  You then use a
  5735. special player, included, which will show the RAW format animation on VGA,
  5736. SVGA, or VESA screens!  And, hey 286 users, this one actually works on
  5737. 80286 machines (albeit a little slowly).
  5738.  
  5739. The converter does a remarkable job, and I use it for the "essential" MPEGs
  5740. that I would like to view at the highest speed possible.  If you have the
  5741. anim loaded in RAMdisc then you have a really nice framerate even on a
  5742. lowly 386!  :)   In the newly released 1.1 version, the converter and
  5743. viewer are now included in one executable.
  5744.  
  5745. It is important to note that this viewer will allow users to see MPEGs that
  5746. the Xing player will not.  This is because DMPEG is programmed to view all
  5747. 3 frametypes, while Xing's player isn't.  If the MPEG won't view using
  5748. Xing, try this player, DMPEG.
  5749.  
  5750. ---------------------------------------------------------------------------
  5751.  
  5752. ~Subject: secmpeg
  5753.  
  5754. [ This is the README.DOS file out of the SECMPEG-archive. Read below in ]
  5755. [ the UNIX-section for more information about SECMPEG.                  ]
  5756.  
  5757.        SECMPEG is a program based on a rather  complex  algorythm
  5758.        to  ensure  a  confidentiality and a integrity service for
  5759.        the video-stream MPEG-I.
  5760.  
  5761.  
  5762. SECMPEG.ZIP (c) 1994 by Frank Gadegast and Juergen Meyer
  5763.  
  5764. This is my DOS-port of the MPEG-filter called "secmpeg".
  5765. Read the provided file README and the man-page first.
  5766.  
  5767. It was compiled with the DOS-port of the GNU GCC-compiler,
  5768. called DJGCC Version 2.4.1 and NDMAKE Version 4.5. So please
  5769. read the GNU-Licence-file 'LICENCE.GNU'.
  5770.  
  5771. You find the DOS executable in this distribution under
  5772. 'secmpeg.exe'.
  5773.  
  5774.  
  5775. NEEDS and INSTALL
  5776.  
  5777. Cause of DJGCC, the final executable is not running under
  5778. DPMI (so not in a Windows-DOS-Box) nor on a 286-machine.
  5779.  
  5780. The executable 'GO32.EXE' has to be somewhere in the PATH.
  5781. If running on a 386, the emulationfile 'EMU387' has to be,
  5782. where the environment variable GO32 is pointing to, so if
  5783. the emu-file is in D:\LIB enter:
  5784.  
  5785. set GO32=emu d:/lib/emu387
  5786.  
  5787.        Permission to use, copy, modify, and distribute this soft-
  5788.        ware and its documentation for any purpose and without fee
  5789.        is hereby granted, provided that the archive remains  com-
  5790.        plete,  that  this author notice will appear in all copies
  5791.        and as long as you don't try to make money off it, or pre-
  5792.        tend that you wrote it.
  5793.  
  5794. ---------------------------------------------------------------------------
  5795.  
  5796. ~Subject: mpegstat
  5797.  
  5798. [ The first tool to test a MPEG-I-stream ! Including statistics, frame- ]
  5799. [ order, decoding times !! Now you can test, if archives are ok or if a ]
  5800. [ file uudecoded ok without playing it ! This code is surely based on   ]
  5801. [ the berkeley-decoder.                                                 ]
  5802.  
  5803.  
  5804. MPEGSTAT.ZIP (c) 1994 by PHADE Software
  5805.  
  5806. This is my DOS-port of the MPEG-filter called "mpegstat".
  5807.  
  5808. It was compiled with the DOS-port of the GNU GCC-compiler,
  5809. called DJGCC Version 2.4.1 and NDMAKE Version 4.5. So please
  5810. read the GNU-Licence-file 'LICENCE.GNU'.
  5811.  
  5812. WHERE IS IT ?
  5813.  
  5814. It will be posted the alt.binaries.pictures.utilities group these days.
  5815. Reposts come as requested.
  5816.  
  5817. It will stored on our ftp-server in the next days (probably there):
  5818.  
  5819. URL=ftp://ftp.cs.tu-berlin.de/pub/msdos/dos/graphics/mpegstat.zip
  5820.     [130.149.17.7]
  5821.  
  5822.  
  5823. NEEDS and INSTALL
  5824.  
  5825. The executable 'GO32.EXE' has to be somewhere in the PATH.
  5826. If running on a 386, the 387-emulationfile 'EMU387' has to be,
  5827. where the environment variable GO32 is pointing to, so if the
  5828. emu-file is in D:\LIB enter:
  5829.  
  5830. set GO32=emu d:/lib/emu387
  5831.  
  5832. That should do, KeyJ Phade (phade@cs.tu-berlin.de)
  5833.  
  5834. ---------------------------------------------------------------------------
  5835.  
  5836. ~Subject: enc11dos
  5837.  
  5838. [ Well, and soon as it was out, I ported Berkeley's new MPEG-ecndoder ]
  5839. [ to DOS as well, here the README.DOS file. For more information see  ]
  5840. [ below in the UNIX-section.                                          ]
  5841.  
  5842. ENC11DOS.ZIP (c) 1993 by PHADE Software
  5843.  
  5844. This is my DOS-port of the MPEG-encoder called "mpeg_encode"
  5845. by the Berkeley Research Group.
  5846.  
  5847. It was compiled with the DOS-port of the GNU GCC-compiler,
  5848. called DJGCC Version 2.4.1 and NDMAKE Version 4.5. So please
  5849. read the GNU-Licence-file 'LICENCE.GNU'.
  5850.  
  5851. WHERE IS IT ?
  5852.  
  5853. It will be posted the alt.binaries.pictures.utilities group these days.
  5854. Reposts come as requested.
  5855.  
  5856. It will stored on our ftp-server in the next days (probably there):
  5857.  
  5858. URL=ftp://ftp.cs.tu-berlin.de/pub/msdos/dos/graphics/enc11dos.zip
  5859.     [130.149.17.7]
  5860.  
  5861. NEEDS and INSTALL
  5862.  
  5863. The executable 'GO32.EXE' has to be somewhere in the PATH.
  5864. If running on a 386, the 387-emulationfile 'EMU387' has to be,
  5865. where the environment variable GO32 is pointing to, so if the
  5866. emu-file is in D:\LIB enter:
  5867.  
  5868. set GO32=emu d:/lib/emu387
  5869.  
  5870. That should do, KeyJ Phade (phade@cs.tu-berlin.de)
  5871.  
  5872. ---------------------------------------------------------------------------
  5873.  
  5874. ~Subject: pvrg MPEG
  5875.  
  5876. [ Well, this is just class. The Stanford-Codec is now available for ]
  5877. [ DOS-users. The file is usually called PVRGMPEG.ZIP, it supports   ]
  5878. [ IPB-Frames and Xing-Format ! Sometimes called MPGCODEC too.       ]
  5879.  
  5880. From: glogan@taynet.co.uk
  5881. Subject: PVRG MPEG CODEC
  5882. Date: 15 Jun 93 20:09:52 +0100
  5883.  
  5884. This archive contains the following files:
  5885.  
  5886.     README.1ST      This file
  5887.     PVRGMPEG.EXE    My port of the PVRG MPEG CODEC
  5888.     PPM2CYUV.EXE    My port of the PVRG YUV file splitter
  5889.     CYUV2PPM.EXE    My port of the PVRG YUV file combiner
  5890.     MAKEMPEG.TXT    Details of how I did the port
  5891.     USEMPEG.TXT     Details on using PVRGMPEG
  5892.     SHORT.MPG       A XING compatible version of short.mpg supplied
  5893.             by PVRG with the source code.
  5894.     SHORT*.GIF      The 10 frames in GIF format to make SHORT.MPG
  5895.  
  5896. I hope I have not offended anybody by putting this archive together. I offer 
  5897. no warranty of any description with respect to my porting.
  5898.  
  5899. All of the EXE files were compiled by me from Publicly available source code
  5900. from the FTP sites listed in MAKEMPEG.TXT.
  5901.  
  5902. I would like to thank the PVRG group for writing such an excellent encoder
  5903. and for their help in getting at the Alpha release of v1.2 so quickly (I can't 
  5904. name this person as the PVRG copyright notice forbids it). Also I would like
  5905. to thank Jelle van Zeijl for sending me the XING patch originally written by 
  5906. Mats Loftvist which has subsequently been included the Alpha release of v1.2.
  5907.  
  5908. Have fun and please mail me to let me know how you get on. A copy of any
  5909. interesting movies would be appreciated.
  5910.  
  5911. This is the MAKEMPEG.TXT file from pvrgmpeg.zip it may help you port the PVRG
  5912. MPEG CODEC to your platform.
  5913.  
  5914. Hi All you Eager MPEG Makers, here is how to port the PVRG MPEG
  5915. encoder/decoder to DOS/PC (386).
  5916.  
  5917. Tools required:
  5918.     Well the ones that I used.
  5919.  
  5920.         GNU C version 2.2.2
  5921.         An uncompress util for UNIX .Z files
  5922.         An untar util for UNIX tar files
  5923.         Text Editor (sorry some code needs tweaked)
  5924.         Note: Diff from the GNU File utilities, could be used instead
  5925. Source required:
  5926.         1)
  5927.         /pub/mpeg/MPEGv1.2.alpha.tar.Z
  5928.             from havefun.stanford.edu
  5929.  
  5930.         /pub/mpeg/MPEGDOCv1.1.tar.Z
  5931.             from havefun.stanford.edu
  5932.             documentation still to be updated.
  5933.  
  5934.     2)      The DOS port of PPM2CYUV called ppm2cyuv.exe
  5935.     3)      Image Alchemy from a number of ftp sites.
  5936.             eg /mirrors4/garbo.uwasa.fi/graphics/alch16.zip
  5937.                 at wuarchive.wustl.edu
  5938.  
  5939. Image Alchemy may be replaced with giftoppm.exe from the pbmplus set of
  5940. graphics tools.
  5941.  
  5942. Graham Logan
  5943. June 15th 1993
  5944. glogan@taynet.co.uk
  5945.  
  5946. ---------------------------------------------------------------------------
  5947.  
  5948. ~Subject: SUBSECTION - Windows
  5949.  
  5950. ---------------------------------------------------------------------------
  5951.  
  5952. ~Subject: XingIt
  5953.  
  5954. [ This is Xing's new Public-Domain-Player. It is enhanced, but still   ]
  5955. [ has of bugs. You have to deinstall the old .DLL's and the MCI-driver ]
  5956. [ to have it running proper. The DOS-MPEG-Player included in this file ]
  5957. [ (named MPEGVIEW.EXE) doesn NOT run with all Soundblaster-compatible  ]
  5958. [ cards and kills the machine quit often.                              ]
  5959.  
  5960.          XingIt! MPEG Player Software Demo
  5961.                (August 27,1993)
  5962.  
  5963. The file MPEGVIEW.EXE installs Xing Technology, Inc.'s XingIt! MPEG
  5964. Player Software Demo for IBM PC compatibles. Xing's "XingIt!" real-time 
  5965. video MPEG capture board, including encoding software, video and sound editor, 
  5966. and the full-featured player is available direct from Xing Technology, 
  5967. Inc. in Arroyo Grande, CA (See below for order info).
  5968.  
  5969. The file MPEGVIEW.EXE is a self extracting archive. To install the player,
  5970. create a new directory on your hard drive and copy MPEGVIEW.EXE into it.
  5971. Change to that directory and type MPEGVIEW to extract the player files.
  5972.  
  5973. MPEGVIEW.EXE also contains a DOS version of the player, MPEG.EXE.
  5974. To run the DOS version, change to the directory where you extracted
  5975. MPEGVIEW.EXE and type "MPEG MPEGFILENAME.MPG".
  5976.  
  5977. ---------------------------------------------------------------------------
  5978.  
  5979. ~Subject: mpgaudio
  5980.  
  5981. Now there is the MPEG AUdio Player for Win3.1 !
  5982.  
  5983. This program is Shareware. To encode your own MPEG Audio files, you need
  5984. to buy the MPEG AUdio Software Encoder program for Win3.1 .
  5985.  
  5986. [ Look above. ]
  5987.  
  5988. ---------------------------------------------------------------------------
  5989.  
  5990. ~Subject: SUBSECTION - WINDOWS-NT
  5991.  
  5992. ---------------------------------------------------------------------------
  5993.  
  5994. ~Subject: mpeg2ply
  5995.  
  5996. [The June 30 edition of mpeg2w11 does not contain encoder port]
  5997.  
  5998.                     MPEG Software Simulation Group codecs
  5999.                              for Windows 32s 
  6000.                            (MPEG-L@netcom.com)
  6001.  
  6002. MPEG2DEC.EXE and MPEG2ENC.EXE are Windows 32s ports with integrated
  6003. display functions of the MPEG Software Simulation Group's programs. 
  6004.  
  6005. MPEG2PLY.EXE is the port of mpeg2play---Stefan Eckart's variation of
  6006. mpeg2decode which optimizes speed through fast decoding methods such as
  6007. approximation techniques, loop unravelling, et al.
  6008.  
  6009. All Win32s programs were ported with Microsoft Visual C++.  Only the
  6010. main() program and display files (mpeg2dec.c, mpeg2enc.c, or mpeg2ply.c) 
  6011. differ from the standard "Unix distribution."
  6012.  
  6013. If you do not have a 32-bit Windows environment (e.g. Win 4.0 Chicago,
  6014. Windows NT), but plain old Windows 16 (e.g. Windows 3.1), yet you do
  6015. possess either a 386, 486, or Pentium-based PC, you can download the
  6016. Microsoft 32-bit extension program, "Win32s" from the Microsoft FTP
  6017. site:
  6018.  
  6019. URL=ftp://ftp.microsoft.com/developers/DEVTOOLS/Win32SDK/Win32s115a.zip
  6020.     [198.105.231.1]
  6021.  
  6022. (this is the latest edition--June 23, 1994)
  6023.  
  6024. Win32s archive (mpeg2w11.zip):      
  6025.  
  6026.  mpeg2dec:   
  6027.    mpeg2dec.c             Main() routine.  Initiates application and display.
  6028.    mpeg2dec.r             MS Visual C++ resource file.
  6029.    makefile               MS Visual C++ project file.
  6030.    gui.h                  #include constants for MS GUI values.
  6031.    mpeg2dec.exe           Speed-optimized executable
  6032.    grayleo.ico            mpeg2dec.exe 32x32 4-bit System Palette icon
  6033.  
  6034.  
  6035. About the windows icon:
  6036. The 32x32 4-bit icon for MPEG2DEC.EXE and MPEG2ENC.EXE is a silhouette
  6037. of Dr. Leonardo Chiariglione (CSELT, Italy), none other than our
  6038. co-founder and exhaulted lifetime Convenor of MPEG.
  6039.  
  6040. Acknowledgement:
  6041. Many thanks to Sorin Papuc (sop@compcore.com) for porting these programs
  6042. to Windows 32s.
  6043.  
  6044. ---------------------------------------------------------------------------
  6045.  
  6046. ~Subject: mpegplay
  6047.  
  6048. [ This new version of it, is running now extremly nice, the subsystem ]
  6049. [ is no harm at all. The file should be known as MPEGW32W.ZIP.        ]
  6050.  
  6051. From: michael@ecel.uwa.edu.au (Michael Simmons  - division)
  6052.  
  6053. MPEGPLAY V1.61 (c) 1993,1994 Michael Simmons
  6054.  
  6055. Please READ ALL of this file!
  6056.  
  6057. This is Release Version 1.61 of my port of the Berkeley mpeg player.
  6058.  
  6059. Note this version requires the WIN32s V1.15a Windows(tm) Extender.
  6060. Also this version will only work under (beta 612) of Windows NT(tm) V3.5 or later.
  6061.  
  6062. Features added in this version include
  6063. (1) Support for MPEG1 System Layer files (you don't have to split them now).
  6064. (2) Support for the Microsoft(tm) WinG(tm) Windows(tm) gaming library.
  6065. (3) Improved colours for the Ordered and 2x2 Order dithers.
  6066. (4) "Save As" For all the Mosaic Users.
  6067. (5) Improved Error handling for corrupt/non standard mpeg files.
  6068. (6) Support for CDI(tm) and VideoCD Streams. Either as an extracted MPEG
  6069.     sequence or as a RAW CDROM grab.
  6070. (7) Recompiled using the Microsoft Daytona(tm?) (beta 612) SDK Compiler.
  6071.  
  6072. Please Email me with any suggestions you may have on improving the player!
  6073. (See the section CONTACTING ME).
  6074.  
  6075. This player can play standard mpeg files that include P and B frame
  6076. encoding, and large 354x288 movie files. 
  6077. It has several display options including mono, gray scale, color dither and
  6078. Full colour (for Hicolor graphic cards).
  6079. 8MB of Ram or greater is recommended if large Image size MPEG files 
  6080. are played.
  6081.  
  6082. This program is SHAREWARE Please read the REGISTER.TXT file for 
  6083. information on registering your copy. 
  6084.  
  6085. To install the player.  
  6086. If you don't have Win32s V1.15a installed, install it first.
  6087. Unzip the file disk1.zip to a floppy disk. 
  6088. Then run the setup.exe file via the Progman File-Run Menu
  6089. Item. 
  6090. Note: This will also install the Microsoft WinG(tm) extensions to Windows(tm)
  6091. Should you wish to remove these extensions at a later date
  6092. please refer to the section near the end of this Readme.txt file.
  6093.  
  6094. Read the Disclaimer in the online Help before loading any mpeg movie files.
  6095.  
  6096. The latest version of this software can be found first on
  6097.  
  6098. URL=ftp://ftp.ecel.uwa.edu.au/users/michael/
  6099.  
  6100. UNREGISTERED VERSION LIMITATIONS:
  6101. The unregistered version will display the About box at startup. 
  6102. IT WILL ALSO NOT HANDLE FILES BIGGER THAN 1MB!
  6103.  
  6104. DISTRIBUTION:
  6105.  
  6106. The Unregistered Version of the Player may be freely Re-Distributed so long as
  6107. (1) None of the files are modified.
  6108. (2) All files in this archive are re-distributed together.
  6109. (3) None of the files are removed from this archive.
  6110. (4) It is clearly stated that this program is Shareware, extended use of
  6111.     which requires payment to myself Michael Simmons as described in the
  6112.     players about box and the REGISTER.TXT file.
  6113. (5) If any additional files are added it must be clearly stated 
  6114.     which files have been added, who added these files and why!. 
  6115.     It must be stated that I "Michael Simmons" am in no way responsible 
  6116.     for these additional files.
  6117. (6) None of the added files can instruct the user or modify the player 
  6118.     in any way possible to enable the Unregistered Version Limitations 
  6119.     to be overcome.
  6120.  
  6121. The Registered Version may only be Re-Distributed with my written
  6122. approval.
  6123.  
  6124. KNOWN BUGS:
  6125. The player does not like certain PD/Shareware desktop addons (Clocks etc).
  6126. A small number of people are getting a GPF in POINTER.DLL. If you have
  6127. this problem and solve it please contact me. So far I can not reproduce
  6128. the fault.
  6129. The player does not multitask while scanning a file to determine whether
  6130. or not it is a system layer or straight video file. This is only a problem
  6131. on large misaligned RAW CDI or VideoCD grabs.
  6132. RAW CDI or VideoCD grabs have only be tested on 4 CDI Disks. Given the
  6133. variation found between these disks I would not be surprised if there
  6134. are problems with some disks.
  6135. If you are having a problem with a certain CDI/VideoCD disk please send a
  6136. copy (both original CD's) of it to me. If I don't already have it I will treat
  6137. it as a registration fee.
  6138. If you have a problem and are really stuck 
  6139. try and find a machine on which it works and compare the two configurations.
  6140. If you really really get stuck then see the section CONTACTING ME.
  6141.  
  6142. CHANGE LOG: (there is more to read after this section)
  6143.  
  6144. Changes V1.0 -> V1.2
  6145. (1) Re complied using the latest (March) WIN32 Beta.
  6146. (2) Includes the latest (March) Win32s windows 3.1 extension.
  6147. (3) Fix bug in finding help file. The working directory can now be different
  6148.     to the Command Line directory.
  6149. (4) Increase number of clicks at startup to 4 
  6150.  
  6151. Changes V1.2 -> 1.25
  6152. (1) Major rewrite of source code to clean up bugs
  6153. (2) Now saves options in a .ini file
  6154. (3) Can split a multi stream MPEG into separate files.
  6155. (4) Loop is now a separate option
  6156. (5) Can be set to skip over B and P frames ( best to stop and rewind player 1st)
  6157. (6) Decrease the number of About Box clicks to one
  6158. (7) Can started via the file manager (associate .mpg with the player)
  6159. (7b) Also startable from other applications i.e. NCSA Mosaic.
  6160. (8) Recompiled with the release version of the Visual C++ for NT compiler
  6161. (9) includes the Win32s version 1.1 files
  6162. (10) Can change InputBufferSize in .ini file (i.e. InputBufferSize=80000)
  6163. (11) Don't have to Close MPEG before OPEN ing
  6164. (12) MPEG images are properly clipped when they are displayed
  6165. (13) Hopefully no one will have any display problems now (try Use Small DIBS)
  6166.  
  6167. Changes V1.25 -> V1.30
  6168. (1) Increased speed 10-20% (mainly P B frames and gray, Full/Hi Color dither).
  6169. (2) Fixed bug, old mpegs causing exceptions (bus.mpg,flower.mpg,flowb.mpg etc).
  6170. (3) Decreased the memory usage.
  6171. (4) Added HiColor Dither (Uses 16 Bit DIBS,These are not supported by many
  6172.     drivers yet, NT emulates support in the GDI).
  6173. (5) Dropped Fs2 and Fs4 dither (use Fs2Fast)
  6174.  
  6175. Changes V1.30 -> V1.50
  6176. (1) Added Push button, VCR like controls.
  6177. (2) Now has a Separate Video Window.
  6178. (3) Automatically Displays the 1st frame of the MPEG.
  6179. (4) Redraws the current frame when needed.
  6180. (5) Displays MPEG File Name, Image Dimensions and File Size in Video Caption
  6181. (6) Saves all window positions correctly when exiting.
  6182. (7) Detects when saved windows position is off the screen.
  6183. (8) Added Experimental Set+Blt Mode for transferring images to the screen.
  6184.  
  6185. Changes V1.50 -> V1.60
  6186. (1) Support for MPEG1 System Layer files (you don't have to split them now).
  6187. (2) Support for the Microsoft(tm) WinG(tm) Windows(tm) gaming library.
  6188. (3) Improve colors for the Ordered and 2x2 Order dithers.
  6189. (4) "Save As" For all the Mosaic Users.
  6190. (5) Improve Error handling for corrupt/non standard mpeg files.
  6191. (6) Support for CDI(tm) and VideoCD Streams. Either as an extracted MPEG
  6192.     sequence or as a RAW CDROM grab.
  6193. (7) Recompiled using the Daytona (beta 612) SDK Compiler.
  6194.  
  6195. ACKNOWLEDGMENTS:
  6196.  
  6197. This code was derived from the U.C. Berkeley MPEG Player (version 2.0)
  6198. developed by L.A. Rowe, K. Patel, and B. Smith (Rowe@CS.Berkeley.EDU).
  6199. Permission to use their code in this Sharware product was obtained.
  6200. THAT code included the following copyright:
  6201.  
  6202. /*
  6203.  * Copyright (c) 1992 The Regents of the University of California.
  6204.  * All rights reserved.
  6205.  * 
  6206.  * Permission to use, copy, modify, and distribute this software and its
  6207.  * documentation for any purpose, without fee, and without written agreement is
  6208.  * hereby granted, provided that the above copyright notice and the following
  6209.  * two paragraphs appear in all copies of this software.
  6210.  * 
  6211.  * IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY FOR
  6212.  * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT
  6213.  * OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE UNIVERSITY OF
  6214.  * CALIFORNIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  6215.  * 
  6216.  * THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES,
  6217.  * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANT ABILITY
  6218.  * AND FITNESS FOR A PARTICULAR PURPOSE.  THE SOFTWARE PROVIDED HEREUNDER IS
  6219.  * ON AN "AS IS" BASIS, AND THE UNIVERSITY OF CALIFORNIA HAS NO OBLIGATION TO
  6220.  * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
  6221.  */
  6222. /*
  6223.  
  6224. OTHER ACKNOWLEDGMENTS:
  6225. Frank Gadegast (the MPEG FAQ Maintainer) for his helpful suggestions.
  6226. Many others for their suggestions and support.
  6227.  
  6228. PATENTS:
  6229. Should this player infringe on a patent held by someone somewhere.
  6230. Please contact me as soon as possible. See the section CONTACTING ME
  6231.  
  6232. CONTACTING ME:
  6233. In any correspondence please clearly state your email and snail mail addresses!
  6234.  
  6235. I have been receiving a large number of emails. 
  6236. In-order to handle these efficiently I would ask that you note the following:
  6237. (1) If possible look on
  6238.  
  6239. URL=ftp://ftp.ecel.uwa.edu.au/users/michael/faq.txt
  6240.  
  6241. (2) Mark all emails that do not require a reply "No Reply Expected". I will READ THESE!
  6242. (3) Bounced replies due to incorrect email addresses (unless obvious) will not 
  6243.     be chased up!
  6244.  
  6245. Email to michael@ecel.uwa.edu.au
  6246. Talk to michael@div-pc-michael.ecel.uwa.edu.au  (8:30am to 5:00pm WA time).
  6247. Phone to (Int)+ 61 9 344 1998 (Home number with answering machine)
  6248. Don't automatically expect me to ring outside of Western Australia.
  6249. I can be contacted via snail mail to PO Box 506,NEDLANDS WA 6009,AUSTRALIA
  6250.  
  6251. NOTE None of the source code to this player is on any of the machines
  6252.      connected to the net via the University of Western Australia.
  6253. IF   someone on network news is flaming me or my port of the player. Please
  6254.      Email me about it.
  6255.  
  6256. OTHER INFO:
  6257. There is another mpeg player for windows available for free from
  6258.  
  6259. URL=ftp://ftp.netcom.com/pub/cfogg/mpeg2/mpeg2w11.zip
  6260.  
  6261. I have nothing to do with this player. None of the source for that player
  6262. is related to mine.
  6263.  
  6264. All of the money from registration is being spent on tools and 
  6265. hardware to improve the player and further my knowledge of MPEG and 
  6266. programming.
  6267. This player is written and maintained in my free time. It is in no-way
  6268. related to the University of Western Australia.
  6269. They have indicated they have no interest in the player or its copyright.
  6270.  
  6271. The Source to this player is NOT Available!
  6272.  
  6273. HOW TO REMOVE THE WIN32s EXTENSIONS to WINDOWS(tm)
  6274.  
  6275. (1) exit to DOS.
  6276. (2) backup your hard disk.
  6277. (3) delete the Win32s directory and all its files.
  6278. (4) edit the system.ini file in the window directory.
  6279.     and remove the line device=C:\WINDOWS\SYSTEM\WIN32S\W32S.386
  6280. (5) return to windows
  6281. (6) remove the Win32 Applications Progman group
  6282.  
  6283. HOW TO REMOVE THE WING EXTENSIONS TO WINDOWS(tm)
  6284.  
  6285. (1) exit to DOS.
  6286. (2) backup your hard disk.
  6287. (3) delete the following files from you c:\windows\system directory
  6288.     dva.386
  6289.     wing.dll
  6290.     wing32.dll
  6291.     wingde.dll
  6292.     wingdib.drv
  6293.     wingpal.wnd
  6294. (4) edit the system.ini file in the window directory.
  6295.     and remove the line device=C:\WINDOWS\SYSTEM\dva.386
  6296. (5) return to windows
  6297.  
  6298. Windows NT, Win32s, Windows 3.1, WinG are trademarks of the Microsoft Corporation.
  6299. CDI is a trademark of Phillips.
  6300.  
  6301. ---------------------------------------------------------------------------
  6302.  
  6303. ~Subject: SUBSECTION - OS/2
  6304.  
  6305. ---------------------------------------------------------------------------
  6306.  
  6307. ~Subject: mp
  6308.  
  6309. mp.lha               gfx/show    45K  83 MPEG player for EHB display.
  6310.  
  6311. ---------------------------------------------------------------------------
  6312.  
  6313. ~Subject: SUBSECTION - X-WINDOWS and UNIX
  6314.  
  6315. ---------------------------------------------------------------------------
  6316.  
  6317. ~Subject: Berkeley's MPEG Tools
  6318.  
  6319. [ These tools were still in Beta-Version when the FAQ was compiled ]
  6320. [ Try ftp to
  6321.  
  6322. URL=ftp://mm-ftp.cs.berkeley.edu/pub/multimedia/mpeg/
  6323.  
  6324. [ find the next 4 tools.                                           ]
  6325.  
  6326. This version of the Berkeley MPEG Tools packages together the decoder 
  6327. (mpeg_play), the encoder (mpeg_encode), and three analysis tools (mpeg_stat,
  6328. mpeg_blocks, and mpeg_bits).  Our last estimate was that over 60,000 copies 
  6329. of the decoder have been FTP'd since the first release in November 1991,
  6330. and over 15,000 copies of the encoder have been FTP'd since it was released 
  6331. in July 1993.
  6332.  
  6333. For other information on multimedia research at U.C. Berkeley, see the home
  6334. page for the Plateau Multimedia Research Group.
  6335.     http://www-plateau.cs.berkeley.edu/plateau.html
  6336.  
  6337. Further about the FTP site is included in INDEX.  See ANNOUNCE for our
  6338. posted announcement of the tools.
  6339.  
  6340. (Last updated: May 5, 1995)
  6341.  
  6342. -- 
  6343. Eugene Hung                             eyhung@garnet.berkeley.edu
  6344. Peter's Theorem:
  6345.   Incompetence plus incompetence equals incompetence.
  6346.  
  6347. ---------------------------------------------------------------------------
  6348.  
  6349. ~Subject: MPEG-1 Video Software Encoder
  6350.  
  6351.                  MPEG-1 Video Software Encoder
  6352.                 (Version 1.5; May 8, 1995)
  6353.  
  6354.      Lawrence A. Rowe, Kevin Gong, Eugene Hung, Ketan Patel, Steve Smoot
  6355.        and Dan Wallach
  6356.     Computer Science Division-EECS, Univ. of Calif. at Berkeley
  6357.  
  6358. This directory contains the freely distributed Berkeley MPEG-1 Video 
  6359. Encoder.  The encoder implements the standard described in the ISO/IEC
  6360. International Standard 11172-2.  The code has been compiled and tested 
  6361. on the following platforms:
  6362.  
  6363.  DECstation 5000 and Alpha
  6364.  HP PA-RISC (HP/UX 9.X) (i.e., HP 9000/7XX and 9000/3XX)
  6365.  SGI Indigo running IRIX 5.0.1
  6366.  Sun Sparc (SunOS 4.X)
  6367.  
  6368. In addition, Rainer Menes from the Technical University of Munich has
  6369. ported the encoder and decoder to the Macintosh.  You can get that code
  6370. directly from him (menes@statistik.tu-muenchen.de), or from the 
  6371. Berkeley FTP archive (mm-ftp.CS.Berkeley.EDU).  If you decide to port 
  6372. the code to a new architecture, please let us know so that we can 
  6373. incorporate the changes into our sources.
  6374.  
  6375. This directory contains everything required to build the encoder
  6376. and run it.  We have included source code, makefiles, binaries
  6377. for selected platforms, documentation, and test data.  Installation 
  6378. instructions are given in the file named src/mpeg_encode/INSTALL.  A man 
  6379. page is given in the file doc/mpeg_encode.1.  A detailed user 
  6380. manual is provided in postscript format in the file doc/user-manual.ps.
  6381.  
  6382. The encoder will accept any input file format as long as you provide 
  6383. a script to convert the images to PPM, YUV, JPEG, or JMOVIE format.  Input 
  6384. file processing is described in the file doc/INPUT.FORMAT.  Options to 
  6385. control input file processing and compression parameters are specified in 
  6386. a parameter file.  Very little error processing is done when reading 
  6387. this file.  We suggest you start with the sample parameter file 
  6388. examples/template.param and modify it.  See also examples/default.param.
  6389.  
  6390. The convert directory of Mpeg-Tools contains utilities you might find 
  6391. useful including: 
  6392.  
  6393. programs to do PPM/YUV conversion and programs to convert Parallax
  6394. XVideo JPEG files into PPM, YUV, or JPEG frames.
  6395.  
  6396. The motion vector search window can be specified, including half-pixel
  6397. block matching, in the parameter file.  We have implemented several 
  6398. search algorithms for P-frames including: 1) exhaustive search, 
  6399. 2) subsampled search, and 3) logarithmic search.  We have also implemented
  6400. several alternatives for B-frame block matching including: 1) interpolate
  6401. best forward and best backward block, 2) find backward block for best
  6402. forward or vice-versa (called CROSS2), and 3) exhaustive cross product
  6403. (i.e., go out for coffee and a donut!). The search algorithms are controlled
  6404. by options in the parameters file.  For tips on choosing the right search
  6405. technique, see the user manual.
  6406.  
  6407. The encoder can be run on one computer (i.e., sequential) or on several
  6408. computers (i.e., parallel).  Our goal is to produce a portable, easy-to-use
  6409. encoder that we can use to encode large volumes of video material for
  6410. the Berkeley VOD system (see paper VodsProp93.ps.Z on the FTP archive).
  6411. The parallelism is done on a sequence of pictures.  In other words, you 
  6412. can spawn one or more children to encode continuous runs pictures. The 
  6413. uncompressed data can be accessed either through NFS or TCP sockets.  
  6414. The goal is to allow you to encode using multiple processors, think 
  6415. spare cycles on workstations, to speed up the encoding time.  Although
  6416. performance depends on the speed of individual processors, the file system
  6417. and network, and the P/B frame search methods, we have encoded 3.75
  6418. frames/second on 8 HP Snakes running in parallel as compared with 0.6
  6419. frames/second on 1 Snake.  These are preliminary results. We are continuing 
  6420. to experiment with and tune the code.  Instructions to run the parallel system 
  6421. are given in the man page and the parallel.param example parameter file.
  6422.  
  6423. We have done some tuning to produce a reasonable encoder, but there are
  6424. many more optimizations that we would like to incorporate.  These 
  6425. extensions are listed in the file doc/EXTENSIONS.  If you succeed in 
  6426. implementing any of them, please let us know! 
  6427.  
  6428. Send bug reports to:
  6429.  
  6430. mpeg-bugs@CS.Berkeley.EDU
  6431.    Problems, questions, or patches should be sent to this address.
  6432.  
  6433. Anyone interested in providing financial support for this research or 
  6434. discussing other aspects of this project should contact Larry Rowe at 
  6435. Rowe@CS.Berkeley.EDU (+1 510-642-5117).
  6436.  
  6437. This software is freely distributed.  That means, you may use it for 
  6438. any non-commercial purpose.  However, patents are held by several companies 
  6439. on various aspects of the MPEG video standard.  Companies or individuals
  6440. who want to develop commercial products that include this code must
  6441. acquire licenses from these companies.  For information on licensing, see
  6442. Appendix F in the standard.
  6443.  
  6444. ACKNOWLEDGEMENTS:
  6445.  
  6446. We gratefully thank Hewlett-Packard and Fujitsu who provided financial
  6447. support for this work.  We also want to thank the following people and
  6448. organizations for their help:
  6449.  
  6450.     Jef Poskanzer who developed the pbmplus package.
  6451.     ---------
  6452.     Copyright (C) 1989, 1991 by Jef Poskanzer.
  6453.  
  6454.     Permission to use, copy, modify, and distribute this software and its
  6455.     documentation for any purpose and without fee is hereby granted, provided
  6456.     that the above copyright notice appear in all copies and that both that
  6457.     copyright notice and this permission notice appear in supporting
  6458.     documentation.  This software is provided "as is" without express or
  6459.     implied warranty.
  6460.     ---------
  6461.  
  6462.     Eiichi Kowashi of Intel and Avideh Zakhor of U.C. Berkeley who
  6463.     provided valuable suggestions on motion vector searching.
  6464.  
  6465.     Chad Fogg of the University of Washington who has helped us 
  6466.     understand many issues in MPEG coding and decoding.
  6467.  
  6468.     Rainer Menes of the Technical University of Munich who has ported the
  6469.     the Berkeley MPEG encoder and decoder to the Macintosh, and he has 
  6470.     provided us with many suggestions to improve the code.
  6471.  
  6472.     Robert Safranek of ATT for comments, suggestions, and most of the
  6473.     code for custom quantization tables.
  6474.  
  6475.     Jim Boucher of Boston University for jmovie2jpeg.
  6476.  
  6477.     The San Diego SuperComputing Center for providing facilities to 
  6478.     develop some of the code contained within.
  6479.  
  6480. -- 
  6481. Eugene Hung                             eyhung@garnet.berkeley.edu
  6482.  
  6483. ---------------------------------------------------------------------------
  6484.  
  6485. ~Subject: MPEG Video Software Decoder
  6486.  
  6487.                   MPEG Video Software Decoder
  6488.                   (Version 2.1; May 1 1995)
  6489.  
  6490.  Lawrence A. Rowe, Ketan Patel, Brian Smith, Steve Smoot, and Eugene Hung
  6491.       Computer Science Division-EECS, Univ. of Calif. at Berkeley
  6492.  
  6493. This directory contains a public domain MPEG video software
  6494. decoder. The decoder is implemented as a library that will
  6495. take a video stream and display it in an X window on an 8, 24
  6496. or 32 bit deep display.  The main routine is supplied to
  6497. demonstrate the use of the decoder library. Several dithering
  6498. algorithms are supplied based on the Floyd-Steinberg, ordered
  6499. dither, and half-toning algorithms that tradeoff quality and
  6500. performance. Neither the library nor the main routine handle
  6501. real-time synchronization or audio streams.
  6502.  
  6503. The decoder implements the standard described in the Committee 
  6504. Draft ISO/IEC CD 11172 dated December 6, 1991 which is
  6505. sometimes refered to as "Paris Format." The code has been
  6506. compiled and tested on the following platforms:
  6507.  
  6508.  HP PA-RISC (HP/UX 9.X, X11R5) (i.e., HP 9000/7XX and 9000/3XX)
  6509.  Sun Sparc (SunOS 4.X, X11R5)
  6510.  DECstation 5000 and Alpha
  6511.  Silicon Graphics Indigo
  6512.  MIPS RISC/os 4.51
  6513.  
  6514. If you decide to port the code to a new architecture, please let
  6515. us know if there are any significant changes, so that we can incorporate
  6516. them into our sources. 
  6517.  
  6518. This directory contains everything required to build and
  6519. display video. We have included source code, a makefile, an Imakefile,
  6520. installation instructions, and a man page. Data files can
  6521. be obtained from the same ftp site this was located in.
  6522. See the INSTALL file for instructions on how to
  6523. compile and run the decoder. 
  6524.  
  6525. The data files were produced by XING. XING data does not take
  6526. advantage of P or B frames (ie, frames with motion compensation). 
  6527. Performance of the player on XING data is significantly slower 
  6528. (half or less) than the performance when motion compensated MPEG 
  6529. data is decoded. We are very interested in running the software 
  6530. on other MPEG streams.  Please contact us if you have a stream 
  6531. that does not decode correctly. Also, please send us new streams
  6532. produced by others that do utilize P and B frames.
  6533.  
  6534. Our future plans include porting the decoder to run on other
  6535. platforms, integrating it into a video playback system that
  6536. supports real-time synchronization and audio streams, and
  6537. further experiments to improve the performance of the
  6538. decoder. Vendors or other organizations interested in supporting 
  6539. this research or discussing other aspects of this project should 
  6540. contact Larry Rowe at Rowe@CS.Berkeley.EDU.
  6541.  
  6542. Other Versions:
  6543. There are three variations of the old mpeg_play:
  6544.   One added a very nice Motif interface (variously named 
  6545.     mpeg_play-2.0.1 and xmpegplay).
  6546.   One was mpegvga.patch and let linux play straight to a VC.
  6547.   One was an X interface (mpegplayer.tar.gz on linux sites)
  6548. We have notified the authors of those programs, and will
  6549. have new versions of them here as soon as they can find the time
  6550. to update them.
  6551.  
  6552.  
  6553. Reporting bugs:
  6554.     If you find any bugs in this software, please send them to
  6555.     mpeg-bugs@plateau.cs.berkeley.edu.  Since this software
  6556.     is unsupported, we make no guarantees about how long it will
  6557.     take to fix the bug, or if it will be fixed at all.  Bug fixes
  6558.     will be cheerfully accepted.  Please include as much detailed
  6559.     information as possible, including:
  6560.  
  6561.     1) the version number of the program you are using (cf. VERSION)
  6562.     2) the data file that caused the bug (if possible)
  6563.     3) the OS version and machine type you ran the program on
  6564.     4) the compiler used to compile the program
  6565.  
  6566. ACKNOWLEDGEMENTS:
  6567.     We gratefully thank Hewlett-Packard, Fujitsu, the Semiconductor
  6568.     Research Corporation for financial support.
  6569.  
  6570.     We also want to thank the following people for their help:
  6571.  
  6572.     Tom Lane of the Independent JPEG Group provided us with
  6573.         the basic inverse DCT code used by our player.
  6574.         (tom_lane@g.gp.cs.cmu.edu)
  6575.  
  6576.     Reid Judd of Sun Microsystems provided advice and assistance.
  6577.  
  6578.     Todd Brunhoff of NVR provided advice and assistance.
  6579.  
  6580.     Toshihiko Kawai of Sony provided advice and assistance.
  6581.  
  6582. -- 
  6583. Eugene Hung                             eyhung@garnet.berkeley.edu
  6584.  
  6585. ---------------------------------------------------------------------------
  6586.  
  6587. ~Subject: MPEG Video Software Analyzer
  6588.  
  6589.                   MPEG Video Software Analyzer
  6590.                   (Version 1.0; May 81995)
  6591.  
  6592.  Lawrence A. Rowe, Doug Banks, Steve Smoot, and Sam Tze-San Fung 
  6593.  Computer Science Division-EECS, Univ. of Calif. at Berkeley
  6594.  
  6595. This directory contains a public domain tool to monitor and modify 
  6596. MPEG video streams.  mpeg_bits takes as input an mpeg stream and
  6597. presents graphical feedback on the distribution of bits in the
  6598. stream, on a macroblock-by-macroblock level.  mpeg_bits also provides
  6599. a simple user interface to generate specifics files that can be
  6600. used by mpeg_encode to re-encode a stream, modifying the encoding 
  6601. on a macroblock-by-macroblock level.  [The present version of mpeg_encode
  6602. does not support this..]
  6603.  
  6604. This tool does not support system layer streams.
  6605.  
  6606. mpeg_bits supports the standard described in the Committee 
  6607. Draft ISO/IEC CD 11172 dated December 6, 1991 which is
  6608. sometimes refered to as "Paris Format." The code has been
  6609. compiled and tested at least once on the following platforms:
  6610.     
  6611.  HP PA-RISC (HP/UX 9.X, X11R5) (i.e., HP 9000/7XX and 9000/3XX)
  6612.  Sun Sparc (SunOS 4.X, X11R5)
  6613.  
  6614. If you decide to port the code to a new architecture, please let
  6615. us know about important changes, so that we can incorporate the changes
  6616. into our sources. 
  6617.  
  6618. This directory contains everything required to build and use
  6619. mpeg_bits.  We have included source code, a makefile, installation
  6620. instructions, and a man page.  
  6621.  
  6622. Archive-name: mpeg-faq/part6
  6623. Last-modified: 1995/06/07
  6624. Version: v 4.0 95/06/07
  6625. Posting-Frequency: bimonthly
  6626.  
  6627. See the INSTALL file for instructions on how to
  6628. compile and run the analyzer.
  6629.  
  6630. Our future plans consist of more fully supporting an interactive
  6631. editor paradigm; specifying changes directly on the display, 
  6632. seeing the results of edits on the video stream immediately
  6633. as they occur, etc.  We would also like to port the code to
  6634. run on more platforms, and add support for system layer streams.
  6635. Vendors or other organizations interested in supporting 
  6636. this research or discussing other aspects of this project should 
  6637. contact Larry Rowe at Rowe@CS.Berkeley.EDU.
  6638.  
  6639. Reporting bugs:
  6640.     If you find any bugs in this software, please send them to
  6641.     mpeg-bugs@plateau.cs.berkeley.edu.  Since this software
  6642.     is unsupported, we make no guarantees about how long it will
  6643.     take to fix the bug, or if it will be fixed at all.  Bug fixes
  6644.     will be cheerfully accepted.  Please include as much detailed
  6645.     information as possible, including:
  6646.  
  6647.     1) the version number of the program you are using (cf. VERSION)
  6648.     2) the data file that caused the bug (if possible)
  6649.     3) the OS version and machine type you ran the program on
  6650.     4) the compiler used to compile the program
  6651.  
  6652. ACKNOWLEDGEMENTS:
  6653.     We gratefully thank Hewlett-Packard, Fujitsu, the Semiconductor
  6654.     Research Corporation for financial support.
  6655.  
  6656.     We also want to thank the following people for their help:
  6657.  
  6658.     Tom Lane of the Independent JPEG Group provided us with
  6659.         the basic inverse DCT code used by our player.
  6660.         (tom_lane@g.gp.cs.cmu.edu)
  6661.  
  6662.     Reid Judd of Sun Microsystems provided advice and assistance.
  6663.  
  6664.     Todd Brunhoff of NVR provided advice and assistance.
  6665.  
  6666.     Toshihiko Kawai of Sony provided advice and assistance.
  6667.  
  6668. -- 
  6669. Eugene Hung                             eyhung@garnet.berkeley.edu
  6670.  
  6671. ---------------------------------------------------------------------------
  6672.  
  6673. ~Subject: MPEG Blocks Analyzer
  6674.  
  6675.                     MPEG Blocks Analyzer
  6676.                   (Version 1.0; Feb 1 1995)
  6677.  
  6678.                        Ketan Patel
  6679.                        Steve Smoot 
  6680.                        Brian Smith
  6681.                      Sam Tze-San Fung
  6682.  
  6683.  Computer Science Division-EECS, Univ. of Calif. at Berkeley
  6684.  
  6685. This directory contains a public domain MPEG video software
  6686. analyzer.  It operates by playing a video stream in one window, while
  6687. another window displays the block type and motion vectors for each block in
  6688. the current frame.
  6689.  
  6690. The decoder implements the standard described in the Committee 
  6691. Draft ISO/IEC CD 11172 dated December 6, 1991 which is
  6692. sometimes refered to as "Paris Format." The code has been
  6693. compiled and tested on the following platforms:
  6694.  
  6695.  
  6696.  HP PA-RISC (HP/UX 8.X, X11R4) (i.e., HP 9000/7XX and 9000/3XX)
  6697.  Sun Sparc (SunOS 4.X, X11R5)
  6698.  
  6699. This directory contains everything required to build and
  6700. display video. We have included source code, a makefile, 
  6701. installation instructions, and a man page. Data files can
  6702. be obtained from the same ftp site this was located in.
  6703. See the INSTALL file for instructions on how to
  6704. compile and run mpeg_blocks.
  6705.  
  6706. Problems, questions, or patches should be sent to:
  6707.     mpeg-bugs@Plateau.CS.Berkeley.EDU
  6708.  
  6709. ACKNOWLEDGEMENTS:
  6710.     We gratefully thank Hewlett-Packard, Fujitsu, the Semiconductor
  6711.     Research Corporation for financial support.
  6712.  
  6713.     We also want to thank the following people for their help:
  6714.  
  6715.     Tom Lane of the Independent JPEG Group provided us with
  6716.         the basic inverse DCT code used by our player.
  6717.         (tom_lane@g.gp.cs.cmu.edu)
  6718.  
  6719.     Reid Judd of Sun Microsystems provided advice and assistance.
  6720.  
  6721.     Todd Brunhoff of NVR provided advice and assistance.
  6722.  
  6723.     Toshihiko Kawai of Sony provided advice and assistance.
  6724.  
  6725. -- 
  6726. Eugene Hung                             eyhung@garnet.berkeley.edu
  6727.  
  6728. ---------------------------------------------------------------------------
  6729.  
  6730. ~Subject: MPEG Video Software Statistics Gatherer
  6731.  
  6732.               MPEG Video Software Statistics Gatherer
  6733.                   (Version 2.2; May 8, 1995)
  6734.  
  6735.  Lawrence A. Rowe, Steve Smoot, Ketan Patel, and Brian Smith
  6736.  Computer Science Division-EECS, Univ. of Calif. at Berkeley
  6737.  
  6738. This directory contains a public domain MPEG video statistics gatherer.
  6739. The decoder implements the standard described in the Committee 
  6740. Draft ISO/IEC CD 11172 dated December 6, 1991 which is
  6741. sometimes referred to as "Paris Format." The code has been
  6742. compiled and tested on the following platforms:
  6743.  
  6744.  HP PA-RISC (HP/UX 9.X) (i.e., HP 9000/7XX and 9000/3XX)
  6745.  Sun Sparc (SunOS 4.X)
  6746.  DECstation 5000 and Alpha
  6747.  Sequent
  6748.  Irix 4.0.5
  6749.  Linux
  6750.  
  6751. See the CHANGES file for information on all the improvements over 2.0
  6752.  
  6753. See the manual page for information on how to use mpeg_stat.
  6754.  
  6755. Send bug reports to mpeg-bugs@plateau.cs.berkeley.edu,
  6756. job offers (PhD in '96) to smoot@cs.berkeley.edu ;-)
  6757.  
  6758. Vendors or other organizations interested in supporting 
  6759. this research or discussing other aspects of this project should 
  6760. contact Professor Larry Rowe at rowe@CS.Berkeley.EDU.
  6761.  
  6762. FUTURE PLANS:
  6763. In the next version I'd like to beef up the verification code and do
  6764. something with system layer audio (when present).  In addition (major
  6765. though) MPEG-2 would be cool.  If you send me code to do any of this, it
  6766. will be much appreciated.  (In general, though, I'll only be improving it
  6767. to meet my thesis needs. -srs)
  6768.  
  6769. INSTALL:
  6770.   If you have gcc, type "make"
  6771.   See the file INSTALL for slightly more help.
  6772.  
  6773. AUDIO (we don't do audio, but Chad Fogg points out):
  6774.   CCETT has been distributing executables only of their Audio bitstream
  6775.   syntax verifier.  The site address is: 161.105.2.22
  6776.   Audio conformance bitstreams are also at ftp.tnt.uni-hannover.de 
  6777.  
  6778. ACKNOWLEDGEMENTS:
  6779.     We gratefully thank Hewlett-Packard, Fujitsu, the Semiconductor
  6780.     Research Corporation for financial support.
  6781.  
  6782.     We also want to thank the following people for their help:
  6783.  
  6784.     Tom Lane of the Independent JPEG Group provided us with
  6785.         the basic inverse DCT code used by our player.
  6786.         (tom_lane@g.gp.cs.cmu.edu)
  6787.  
  6788.     Reid Judd of Sun Microsystems provided advice and assistance.
  6789.  
  6790.     Todd Brunhoff of NVR provided advice and assistance.
  6791.  
  6792.     Toshihiko Kawai of Sony provided advice and assistance.
  6793.  
  6794. -- 
  6795. Eugene Hung                             eyhung@garnet.berkeley.edu
  6796.  
  6797. ---------------------------------------------------------------------------
  6798.  
  6799. ~Subject: xmg
  6800.  
  6801. XMG v1.0 - The X MPEG Grabber  
  6802. *******************************
  6803.  
  6804. DESCRIPTION
  6805. +++++++++++
  6806.  
  6807. XMG is a utility for the X Window System which allows you to create MPEG-1 video streams by repeatedly
  6808. grabbing a window on the screen and then joining the frames into an MPEG sequence. XMG has several
  6809. options that modify its behaviour, but it also provides sensible defaults for most of them. The two switches that
  6810. you'll use most of the time are -fps (or -fpm) and -frames. These specify the number of frames per second (or
  6811. per minute) and the total number of frames to grab. Here's an example invocation : 
  6812.  
  6813.         xmg -fps 1 -frames 20
  6814.  
  6815. This specifies that we want to grab 20 frames, one per second, and also that we want to see what's going on
  6816. during the grabbing process. At this point the XMG window will appear : 
  6817.  
  6818.                          
  6819.  
  6820. Click on the "Grab" button and then click with the left mouse button inside the window that you want to grab.
  6821. Once you've done this, the grabbing process will begin immediately, displaying some progress information as
  6822. it does it. It is possible to change a few parameters directly from inside the window, instead of specifying them
  6823. on the command line. When all the frames have been grabbed, the MPEG encoding process begins: go off and
  6824. make yourself a nice cup of tea and come back later. By default the program creates a file called xmgout.mpg
  6825. in the current directory. This file can then be viewed with any MPEG player which supports I,P and B frames
  6826. of any size (Xing for example, doesn't support them). You can specify a different name for the output file with
  6827. the -output switch. For example, the command : 
  6828.  
  6829.         xmg -fps 1 -frames 20 -output mympeg.mpg
  6830.  
  6831. will create a file called mympeg.mpg. When XMG is grabbing the frames, it stores them in a temporary RLE
  6832. compressed and archived format called XLA. This file can become quite large very quickly, especially if you're
  6833. grabbing several frames of a certain size. This file will be created by default in the /tmp directory with the
  6834. name xmgtmp.$$$. This can be changed with the -tmp option : 
  6835.  
  6836.         xmg -fps 1 -frames 20 -tmp /empty/xmpeggrab.tmp
  6837.  
  6838. which will create it in the /empty directory with the name xmpeggrab.tmp. Make sure you've got plenty of
  6839. space on the device ! To actually perform the encoding, XMG requires a parameter file. By default this file is
  6840. called xmg.param and has to be in the current directory. Don't worry if you haven't got one : XMG will create
  6841. a default one for you and use that. A different parameter file can be specified with the -param switch : 
  6842.  
  6843.         xmg -fps 1 -frames 20 -param flower.param
  6844.  
  6845. This will use the file flower.param. A description of the possible contents of the paramter file is provided later
  6846. on. 
  6847.  
  6848. SYNOPSIS
  6849. ++++++++
  6850.  
  6851.     xmg
  6852.         -help
  6853.         -display host:dpy
  6854.         -frames nframes
  6855.         -fps nfps
  6856.         -fpm nfpm
  6857.         -terse 
  6858.         -output filename
  6859.         -tmp filename
  6860.         -param filename
  6861.  
  6862. OPTIONS
  6863. +++++++
  6864.  
  6865. -fps nfps : specifies the number of frames per second to grab. Even if the machine you're using is slow, XMG
  6866. will grab the server during the grab, so that no other application can write to the screen at the same time. As
  6867. soon as the frame has been grabbed, the server is released so that the other applications can redraw their client
  6868. area. 
  6869.  
  6870. -fpm nfpm : specifies the number of frames per minute to grab. 
  6871.  
  6872. -frames nframes : specifies the number of frames to grab in total. 
  6873.  
  6874. -output filename : specifies a name and location for the generated MPEG stream. By default XMG creates a
  6875. file in the current directory called xmgout.mpg. 
  6876.  
  6877. -tmp filename : specifies a name and location for the temporary storage of the grabbed frames. This file is
  6878. deleted when XMG has completed the encoding process. The default is /tmp/xmgtmp.$$$ 
  6879.  
  6880. -terse : does not display the XMG status window during the grabbing/encoding process. The default is to
  6881. display the XMG window. 
  6882.  
  6883. -param : specifies a name and location for the parameter file. By default the file is called xmg.param and has to
  6884. be in the current directory. If one doesn't exist, a default one will be created for you. 
  6885.  
  6886. PARAMETER FILE
  6887. ++++++++++++++
  6888.  
  6889. The parameter file MUST contain the following lines : 
  6890.  
  6891. PATTERN pattern
  6892. ---------------
  6893.  
  6894. pattern is a sequence of I's, P's and B's, that specifies the order of the frames in the MPEG stream. 
  6895.  
  6896. GOP_SIZE n
  6897. ----------
  6898.  
  6899. n is roughly the number of frames in a Group of Pictures (roughly because a GOP must begin with an I-frame) 
  6900.  
  6901. SLICES_PER_FRAME n
  6902. ------------------
  6903.  
  6904. n is roughly the number of slices per frame. Note, at least one MPEG player may complain if slices do not start
  6905. at the left side of an image. To ensure this does not happen, make sure the number of rows is divisible by
  6906. SLICES_PER_FRAME. 
  6907.  
  6908. PIXEL (FULL or HALF)
  6909. --------------------
  6910.  
  6911. use half-pixel motion vectors, or only full-pixel ones 
  6912.  
  6913. RANGE 
  6914. ------
  6915.  
  6916. use a search range of +/- n pixels 
  6917.  
  6918. PSEARCH_ALG algorithm
  6919. ---------------------
  6920.  
  6921. algorithm must be one of {EXHAUSTIVE, TWOLEVEL, SUBSAMPLE, LOGARITHMIC}. Tells what kind
  6922. of search procedure should be used for P-frames. Exhaustive gives the best compression, but logarithmic is the
  6923. fastest. You select the desired combination of speed and compression. TWOLEVEL is an exhaustive full-pixel
  6924. search, followed by a local half- pixel search around the best full-pixel vector (the PIXEL option is ignored
  6925. for this search algorithm). BSEARCH_ALG algorithm must be one of {SIMPLE, CROSS2, EXHAUSTIVE}.
  6926. Tells what kind of search procedure should be used for B-frames. Simple means find best forward and
  6927. backward vectors, then interpolate. Cross2 means find those two vectors, then see what backward vector best
  6928. matches the best forward vector, and vice versa. Exhaustive does an n-squared search and is EXTREMELY
  6929. slow in relation to the others (Cross2 is about twice as slow as Simple). 
  6930.  
  6931. IQSCALE
  6932. -------
  6933.  
  6934. use n as the qscale for I-frames 
  6935.  
  6936. PQSCALE
  6937. -------
  6938.  
  6939. use n as the qscale for P-frames 
  6940.  
  6941. BQSCALE
  6942. -------
  6943.  
  6944. use n as the qscale for B-frames 
  6945.  
  6946. REFERENCE_FRAME (ORIGINAL or DECODED)
  6947. -------------------------------------
  6948.  
  6949. If ORIGINAL is specified, then the original images are used when computing motion vectors. To be more
  6950. accurate, use DECODED, in which the decoded images are used. This should increase the quality of the image,
  6951. but will take a bit longer to encode. 
  6952.  
  6953. The lines may appear in any order, except the following exceptions. 
  6954.  
  6955. NOTES
  6956. +++++
  6957.  
  6958. If XMG was compiled with the -DMITSHM switch enabled, then shared memory will be used if available and
  6959. will increase performance noticeably. 
  6960.  
  6961. AUTHOR
  6962. ++++++
  6963.  
  6964. Tristan Tarrant - University of Sussex, UK, tristant@cogs.susx.ac.uk 
  6965.  
  6966. CREDITS
  6967. +++++++
  6968.  
  6969. MPEG encoding based on mpeg_encode by : 
  6970.  
  6971. Kevin Gong - University of California, Berkeley, keving@cs.berkeley.edu 
  6972.  
  6973. Ketan Patel - University of California, Berkeley, kpatel@cs.berkeley.edu 
  6974.  
  6975. Dan Wallach - University of California, Berkeley, dwallach@cs.berkeley.edu 
  6976.  
  6977. BUGS AND LIMITATIONS
  6978. ++++++++++++++++++++
  6979.  
  6980. XMG works only on Pseudo-Color displays. No known bugs. 
  6981.  
  6982. Tristan Tarrant, tristant@cogs.susx.ac.uk
  6983.  
  6984. ---------------------------------------------------------------------------
  6985.  
  6986. ~Subject: mpegstat
  6987.  
  6988. Tom Pfeifer (pfeifer@fokus.gmd.de) announces:
  6989.  
  6990. [ mpegstat.tar.Z was uploaded to mm-ftp.cs.berkeley.edu, the DOS-port ]
  6991. [ is available on ftp.cs.tu-berlin.de                                 ]
  6992. [ It will probably included in the next version of Berkeley's encoder ]
  6993.  
  6994. This is mpegstat v1.0 - an analyzing took for MPEG-I video streams for Unix. 
  6995. It is based on the Berkeley MPEG player v2.0, utilizing the Berkeley parsing 
  6996. and decoding routines for the MPEG data stream.
  6997.  
  6998.  
  6999. MPEGSTAT is  a  useful utility for analyzing MPEG-I video
  7000. streams. It is based on the Berkeley  MPEG  movie  player.
  7001. MPEGSTAT reads  a  video  stream from a file or stdin and
  7002. shows the frame type pattern as it is found while parsing.
  7003. After  the  stream  is  completely  parsed it displays the
  7004. frame pattern as it would be displayed by a  MPEG  viewer.
  7005. It then generates a summary of various mpeg format related
  7006. statistics.  MPEGSTAT works for MPEG movies that are Paris
  7007. format compatible.
  7008.  
  7009.  
  7010. Authors
  7011.  
  7012. Multimedia  systems  project - Technical University of Berlin, Germany
  7013. Tom   Pfeifer,   Dept.   of    Computer    Science, pfeifer@fokus.gmd.de
  7014. Jens  Brettin - Alexander Schulze - Harald Masche - Dirk Schubert
  7015.  
  7016. ---------------------------------------------------------------------------
  7017.  
  7018. ~Subject: mplex
  7019.  
  7020. *********************************************************************
  7021. *                                                                   *
  7022. *         ANNOUNCING OF A FREE MPEG 1/SYSTEMS MULTIPLEXER           *
  7023. *                                                                   *
  7024. *   thanks to                                                       *
  7025. *   ^^^^^^^^^                                                       *
  7026. *    SIEMENS LTD, CORPORATE RESEARCH AND DEVELOPMENT ZFE ST SN 11   *
  7027. *         TECHNICAL UNIVERSITY OF MUNICH, PROF. SCHLICHTER          *
  7028. *                                                                   *
  7029. *********************************************************************
  7030.  
  7031.  
  7032. Hello all.
  7033.  
  7034. This is an announcing for all of those that have already been waiting
  7035. on the release of my code for multiplexing one  MPEG 1 Audio  and one
  7036. MPEG 1 Video Stream   into a  MPEG 1/SYSTEMS  multiplexed data stream
  7037. according to the ISO/IEC 11172-1 specs.  Sorry for all of those  that
  7038. needed the code really bad and kept mailing me on it. I couldn't hold
  7039. my promises because of copyright release on part of the University.
  7040.  
  7041. But here it is: I uploaded the source code on
  7042.  
  7043. URL=ftp://hpsystem2.informatik.tu-muenchen.de//pub/comp/graphics/mpeg/mplex/mplex-1.0beta.tar.gz
  7044.     [131.159.0.198]
  7045.     ftp.informatik.tu-muenchen.de
  7046.  
  7047. .gz means it is compressed with GNU zip. Should somebody not have it,
  7048. you can find it on our FTP server under
  7049.  
  7050.    /pub/comp/gnu/gzip/
  7051.  
  7052. else, just try
  7053.  
  7054.    get mplex-1.0beta.tar.Z
  7055.  
  7056. Our FTP server will do an on-the-fly-compressing with the 'compress'
  7057. (.Z) format.
  7058.  
  7059.  
  7060. Now to the code itself:
  7061.  
  7062. I have been kept really busy with my papers on multiplexing (they will
  7063. shortly be available on the FTP server also, I will post on that),  so
  7064. sorry if I couldn'g tighten the code up a bit.  There is no real docu-
  7065. mentation yet, please try out the code.  Feel free to email me for any
  7066. further questions.
  7067.  
  7068. As of now, this code will only run under standard UN*X-Style platforms
  7069. providing a (K&R-Style) C compiler (GNU CC is fine). It tested fine on
  7070. SUN's, HEWLETT PACKARD's series 700, SILICON GRAPHICS machine's.
  7071. There is * NO DOS PORT AVAILABLE (YET) *.
  7072.  
  7073. Contact me if you are planning such a thing.
  7074.  
  7075. There will be better releases, and I promise to clean up the code soon.
  7076.  
  7077. :)
  7078.  
  7079. This Software is released under the terms of the GNU public license,
  7080. see the tar archive for further details. Feel free to archive the code
  7081. on other FTP servers or post it to newsgroups, if there is such
  7082. interest.
  7083.  
  7084.  
  7085. Research done at 
  7086.  
  7087.     SIEMENS LTD, CORPORATE RESEARCH AND DEVELOPMENT ZFE ST SN 11
  7088.     TECHNICAL UNIVERSITY OF MUNICH, PROF. SCHLICHTER
  7089.  
  7090. Christoph Moar             moar@Informatik.TU-Muenchen.DE (Christoph Moar)
  7091.  
  7092. ---------------------------------------------------------------------------
  7093.  
  7094. ~Subject: xmplay
  7095.  
  7096. [ Here it is !! The first, fully-featured MPEG-player with X11-interface. ]
  7097. [ XMPLAY exists currently in Version 1.0, patches are available. The next ]
  7098. [ Version 1.1 is currently in development. Thats the announcement !       ]
  7099.  
  7100.             XMPLAY [Version 1.1] - Sun Apr 10 14:51:22 MDT 1994
  7101.  
  7102.       This distribution is the result of a project worked out at the
  7103.       Technical University (TU) Berlin, held in Winter 93/94 by
  7104.       Tom Pfeifer. The basic idea is created by Frank Gadegast,
  7105.       the programing work was then done by Juergen Meyer, Metin
  7106.       Cetinkaya and Frank Gadegast.
  7107.  
  7108. This software is ftp-able from:
  7109.  
  7110. URL=ftp://ftp.cs.tu-berlin.de/pub/incoming/xmplay-1.0.tar.gz
  7111.     [130.149.17.7]
  7112.     quepasa.cs.tu-berlin.de
  7113. URL=ftp://ftp.cs.tu-berlin.de/pub/incoming/xmplay-1.0.patch.tar.gz
  7114.  
  7115. [ Just to remember .gz means, its compressed using GNU's zip, called ]
  7116. [ gzip. Use gunzip to uncompress.                                    ]
  7117.  
  7118.  
  7119. XMPLAY [Version 1.1]
  7120.  
  7121. <IMG SRC="xmplay1.gif"> <IMG SRC="xmplay2.gif">
  7122.  
  7123. XMPLAY is a very nice directory-browser under X11 to use XMPEG,
  7124. the interactive X11-MPEG-player.
  7125.  
  7126. MPEG is a video-format described by the ISO-standard ISO CD11172.
  7127. This implementation here can handle MPEG-stream written down
  7128. at the MPEG-group-meeting in Paris '92. It can handle IPB-frames
  7129. but no system- nor audio-information.
  7130.  
  7131. <IMG SRC="xmplay3.gif"> <IMG SRC="xmplay4.gif">
  7132.  
  7133. Additional you get a little utility called MPEGINFO, showing you, if called
  7134. with the filename of a MPEG-file the most important parameter it can read
  7135. dirrectly from its header, like size, picture rate or frame-style.
  7136.  
  7137. It should work under nearly every system, 'cause it's programed without
  7138. MOTIF, the X11-Toolit or other stupid things, that are always causing
  7139. problems. It only needs the X11-library, no matter if you're using
  7140. Release 3, 4 or Release 5.
  7141.  
  7142. In addition it has lots of defines to let it run under BSD, SYSV, ISC,
  7143. Solaris, SunOS, A/UX, SCO or XENIX and you don't have to hack a difficult
  7144. Imake- or Makefile and you will not have trouble with build-in pathnames !!!
  7145.  
  7146. It's specially made for those systems, that don't have super hardware
  7147. or that have problems with the Toolkit or MOTIF.
  7148.  
  7149.  
  7150. XMPEG [Version 1.1]
  7151.  
  7152. <IMG SRC="xmpeg1.gif"> <IMG SRC="xmpeg3.gif">
  7153.  
  7154. XMPEG is a MPEG-video-player based on the MPEG-widget-implementation
  7155. from Jim Frost and the MPEG-movie-player "mpeg_play" from the Portable
  7156. Video Research Group at Berkeley.
  7157.  
  7158. It just adds a few buttons and is normally getting called
  7159. from XMPLAY, but can be used as stand-alone to include into other
  7160. programs. Its programmed with the same methods than XMPLAY.
  7161.  
  7162. <IMG SRC="xmpeg2.gif"> <IMG SRC="xmpeg4.gif">
  7163.  
  7164.  
  7165. You can ftp XMPLAY from 'quepasa.cs.tu-berlin.de' from the
  7166. directory '/pub/msdos/incoming'.
  7167.  
  7168.  
  7169. If you get problems (not really possible) to compile it or if you have
  7170. comments send them to the authors, reachable at:
  7171.  
  7172.         phade@cs.tu-berlin.de (responsible for compiling and X11)
  7173.         jm@cs.tu-berlin.de (responsible for the mpeg-code) or
  7174.         brain@cs.tu-berlin.de
  7175.  
  7176. ---------------------------------------------------------------------------
  7177.  
  7178. ~Subject: xplayer
  7179.  
  7180.            Version 2.0; Jan 27, 1993)
  7181.           (Motif interface; Jan 30, 1994)
  7182.  
  7183.         Lawrence A. Rowe, Ketan Patel, and Brian Smith
  7184.  Computer Science Division-EECS, Univ. of Calif. at Berkeley
  7185.  
  7186.                   Motif Interface: Daeron Meyer
  7187.            The Geometry Center, University of Minnesota
  7188.  
  7189. There are several mailing lists established for messages about
  7190. the decoder:
  7191.  
  7192. mpeg-list-dist@CS.Berkeley.EDU
  7193. deo Software Decoder
  7194.                   (Version 2.0; Jan 27, 1993)
  7195.           (Motif interface; Jan 30, 1994)
  7196.  
  7197.         Lawrence A. Rowe, Ketan Patel, and Brian Smith
  7198.  Computer Science Division-EECS, Univ. of Calif. at Berkeley
  7199.  
  7200.                   Motif Interface: Daeron Meyer
  7201.            The Geometry Center, University of Minnesota
  7202.  
  7203. There are several mailing lists established for messages about
  7204. the decoder:
  7205.  
  7206. mpeg-list-dist@CS.Berkeley.EDU
  7207.    General information on the decoder for everyone interested
  7208.    should be sent to this list.  This should become active after
  7209.    11/20/92
  7210.  
  7211. mpeg-list-request@CS.Berkeley.EDU
  7212.    Requests to join or leave the list should be sent to this
  7213.    address. The subject line should contain the single word
  7214.    ADD or DELETE.
  7215.  
  7216. mpeg-bugs@CS.Berkeley.EDU
  7217.    Problems, questions, or patches should be sent to this address.
  7218.  
  7219. If you have any questions or bug reports for the motif version
  7220. (and I'm sure there will be plenty) please send mail to:
  7221.  
  7222.    daeron@geom.umn.edu
  7223.  
  7224. Also check out the online web documentation for the motif version:
  7225.  
  7226.    http://www.geom.umn.edu/docs/mpeg_play/mpeg_play.html
  7227.  
  7228. ---------------------------------------------------------------------------
  7229.  
  7230. ~Subject: xmpeg.tk
  7231.  
  7232. <IMG SRC="xmpegtk1.gif"> <IMG SRC="xmpegtk2.gif">
  7233.  
  7234. It's a bit confusing to have now 2 utilities having the same name
  7235. (as xmpeg is already a part of the XMPLAY distritution. It would
  7236. be nice to rename the following tool to xmpeg.tk, contacted the author
  7237. about that but got no reply :o(
  7238.  
  7239.  
  7240. xmpeg (ver 0.5b)
  7241.  
  7242. Tk/Tcl based front end to mpeg_play.
  7243.  
  7244.  
  7245. xmpeg is a simple script that allows users of mpeg_play to have a graphical
  7246. front end to mpeg_play. This means that one does not have to remember 
  7247. what the command line switches are needed, or what kinds of dithering are 
  7248. available. The idea for this came about when we started using NCSA's xmosaic.
  7249. Sometimes it would take 10 minutes to retrieve an mpeg file and it would only
  7250. be displayed once. If you missed it or wanted to view it again, you would
  7251. have to retreive it again and again. Thus xmpeg came into play. 
  7252. It takes a file name as an argument (a temp file in xmosaic's case)
  7253. and allows the user to specify the settings they wish to use. Then the user
  7254. clicks on 'Play Anim' and mpeg_play is invoked.
  7255.  
  7256. REQUIREMENTS: In order to use xmpeg you should have Tk 3.3, Tcl 7.0 and
  7257. mpeg_play 2.0. This has been tested on Sun's running SunOS 4.1.3.
  7258.  
  7259.  
  7260. Comments and/or questions should be directed to Alexei Rodriguez
  7261. (alexei@cis.ufl.edu).
  7262.  
  7263. AVAILABILITY:  xmpeg is available at
  7264.  
  7265. URL=ftp://ftp.cis.ufl.edu/pub/xmpeg
  7266.     [128.227.100.252]
  7267.  
  7268. I will upload it to harbor.ecn.purdue.edu.
  7269.  
  7270. ---------------------------------------------------------------------------
  7271.  
  7272. ~Subject: mpeg2encode / mpeg2decode
  7273.  
  7274. From: cfogg@netcom.com (Chad Fogg)
  7275. Subject: MPEG-2 source code and MS-DOS executables available via anon. FTP
  7276.  
  7277. We, the MPEG Software Simulation Group, are releasing our MPEG-2 and
  7278. MPEG-1 Video encoder and decoder source code, along with example bitstreams
  7279. and pre-compiled MS-DOS executables.  Please read the following extracts
  7280. from our README file for more information:
  7281.  
  7282.               mpeg2encode / mpeg2decode
  7283.               =========================
  7284.           MPEG-2 Encoder / Decoder, Version 1.0, May 1994
  7285.  
  7286.             MPEG Software Simulation Group
  7287.                   (MPEG-L@netcom.com)
  7288.  
  7289. Contents:
  7290. 1. Overview
  7291. 2. Introduction
  7292. 3. Contacting the MPEG Software Simulation Group
  7293. 4. Availability 
  7294. 5. Installation
  7295. 6. Acknowledgements
  7296. 7. History of the technical report
  7297.  
  7298.  
  7299. 1. Overview
  7300. ===========
  7301.  
  7302. This directory contains our implementation of an ISO/IEC DIS 13818-2 codec. 
  7303. It converts uncompressed video frames into MPEG-1 and MPEG-2 video 
  7304. coded bitstream sequences, and vice versa.
  7305.  
  7306. The files mpeg2enc.doc and mpeg2dec.doc in the doc/ directory contain
  7307. further information about the codec. The doc directory also contains an
  7308. FAQ file answering frequently asked questions about MPEG. A precompiled
  7309. version of the programs for MSDOS (requires at least a '386) and a set
  7310. of verification files are available separately.
  7311.  
  7312. Subdirectories src/mpeg2enc and src/mpeg2dec contain the source code
  7313. for the encoder and decoder, subdirectory par/ contains a couple of
  7314. example encoder parameter files for 25 and 30 frames/sec MPEG-2 and
  7315. MPEG-1 video.
  7316.  
  7317.  
  7318. 2. Introduction
  7319. ===============
  7320.  
  7321. MPEG-2 Video is a generic method for compressed representation of video
  7322. sequences using a common coding syntax defined in the document ISO/IEC
  7323. 13818 Part 2 (CD: Nov. 1993, DIS: March 1994) by the International
  7324. Organization for Standardization (ISO) and the International
  7325. Electrotechnical Commission (IEC), in collaboration with the
  7326. International Telecommunications Union (ITU) as Recommendation H.262.
  7327. The MPEG-2 concept is similar to MPEG-1, but includes extensions to
  7328. cover a wider range of applications. The primary application targeted
  7329. during the MPEG-2 definition process was the all-digital transmission
  7330. of broadcast TV quality video at coded bitrates between 4 and 9
  7331. Mbit/sec.  However, the MPEG-2 syntax has been found to be efficient
  7332. for other applications such as those at higher bit rates and sample
  7333. rates (e.g. HDTV). The most significant enhancement over MPEG-1 is the
  7334. addition of syntax for efficient coding of interlaced video (e.g. 16x8
  7335. block size motion compensation, Dual Prime, et al).  Several other more
  7336. subtle enhancements (e.g. 10-bit DCT DC precision, non-linear
  7337. quantization, VLC tables, improved mismatch control) are included 
  7338. which have a noticeable imporvement on coding efficiency, even for
  7339. progressive video. Other key features of MPEG-2 are the scalable
  7340. extensions which permit the division of a continuous video signal into
  7341. two or more coded bit streams representing the video at different
  7342. resolutions, picture quality (i.e. SNR), or picture rates.
  7343.  
  7344. The MPEG Software Simulation Group is currently developing MPEG
  7345. software with the purpose of providing aid in understanding the various
  7346. algorithms which comprise an encoder and decoder, and giving a sample
  7347. implementation based on advanced encoding models. The MPEG-2 software
  7348. project is on on-going development. Since the current version of the
  7349. encoder already employs a reasonable (and the most popular) subset of
  7350. the MPEG-2 signal coding toolkit, and there appears to be sufficient
  7351. public interest, we have decided to make a first public release of the
  7352. code.
  7353.  
  7354. This encoder can also be used for generating good quality constant
  7355. bitrate MPEG-1 sequences and is (to our knowledge) the first public
  7356. release of an encoder based on the relatively sophisticated TM5 coding
  7357. model.
  7358.  
  7359.  
  7360. 3. Contacting the MPEG Software Simulation Group
  7361. ================================================
  7362.  
  7363. We welcome any project-specific questions, comments, suggestions, bug
  7364. reports etc. They should be sent to the Internet address: 
  7365.  
  7366.       MPEG-L@netcom.com 
  7367.  
  7368. which automatically forwards them to the authors.
  7369.  
  7370.  
  7371. 4. Availability
  7372. ===============
  7373.  
  7374. The current version of the codec source code is available by anonymous
  7375. ftp from:
  7376.  
  7377. URL=ftp://ftp.netcom.com/pub/cfogg/mpeg2/ or
  7378. URL=ftp://ftp.netcom.com/pub/cf/cfogg/mpeg2/
  7379.  
  7380. This directory contains the following files:
  7381.  
  7382.   README                         this file
  7383.   mpeg2codec_v1.0.tar.gz         codec source code and documentation
  7384.   mpeg2codec_verify_v1.0.tar.gz  verification archive       
  7385.   mpeg2v10.zip                   MS-DOS executable archive  
  7386.   tennis.m2v                     sample MPEG-2 video sequence (8 frames 704x576)
  7387.   tennis.par, tennis.stat.gz     parameter file and statistics output
  7388.                                  for tennis.m2v
  7389.  
  7390. You need gunzip (GNU zip/unzip) to uncompress the .gz archives.
  7391.  
  7392. Alternatively, the files may be retrieved by sending E-mail to:  
  7393.  
  7394.   ftp-request@netcom.com
  7395.  
  7396. ... with the following line in the body of the message:
  7397.  
  7398.   SEND cfogg/mpeg2/mpeg2codec_v1.0.tar.gz
  7399.  
  7400. You can retrieve the directory listings by sending the following command
  7401. to ftp-request@netcom.com:
  7402.  
  7403.   DIR cfogg/mpeg2
  7404.  
  7405. General information can be retrieved with the command:   HELP
  7406.  
  7407.  
  7408. 5. Installation
  7409. ===============
  7410. [ommitted from this Usenet posting]
  7411.  
  7412. 6. Acknowledgements
  7413. ===================
  7414.  
  7415. Authors of the current release are:
  7416.  
  7417. Stefan Eckart    (stefan@lis.e-technik.tu-muenchen.de)
  7418. Chad Fogg        (cfogg@netcom.com)
  7419. Cheung Auyeung   (auyeung@mot.com)
  7420.  
  7421.  
  7422. 7. History of Technical Report Project
  7423. ======================================
  7424.  
  7425. The Technical Report, a document which primarily consists of
  7426. a C source code program, was initiated by the MPEG committee to: 
  7427.  
  7428.  - Provide an example of MPEG video syntax being intelligently employed 
  7429.    to generate good quality video.
  7430.  - A reference tool for implementors
  7431.  - Aid in understanding the MPEG specification 
  7432.  
  7433. MPEG would like to especially thank Dr. Stefan Eckart for his
  7434. contributions have greatly helped the MPEG-2 Technical Report project
  7435. start onto a successful path towards the final 13818-5 document.
  7436.  
  7437. MPEG lends a kind acknowledgement to Arian Koster (PTT) for initiating
  7438. the MPEG-1 technical report project in Autumn 1992, and Leonardo
  7439. Chiariglione (Chairman of MPEG) and Didier Le Gall (Chairman of MPEG
  7440. Video) for support throughout both projects.  Also many thanks to MPEG-1
  7441. project contributors Peter Au (Hughes Aircraft), Ron Burns (Hughes
  7442. Aircraft), Stefan Eckart (Technical University of Munich), Chad Fogg,
  7443. Tsuyoshi Hanamura (Waseda University), Kinya Oosa (Nippon Steel), Brian
  7444. Quandt (Heuris Logic) and Hiroshi Watanabe (NTT).
  7445.  
  7446. Regards,
  7447.  
  7448. Chad Fogg
  7449. MPEG Chair for Software Simulation
  7450. cfogg@netcom.com
  7451.  
  7452. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  7453.  
  7454. Version 1.1a of the MPEG Software Simulation Group's MPEG-2 codec is
  7455. now available via anonymous ftp from
  7456.  
  7457. URL=ftp://ftp.netcom.com/pub/cfogg/mpeg2/mpeg2codec_v1.1a.tar.gz
  7458.     [192.100.81.1]
  7459.  
  7460. If you have mpeg2codec_v1.1.tar.gz and the program 'patch', it is sufficient to download
  7461. mpeg2codec_v1.1_v1.1a.diff to upgrade vom v1.1 to v1.1a.
  7462.  
  7463. The most import difference between v1.1 and v1.1a is the fix of a bug which
  7464. caused decoding of MPEG-1 sequences to fail if the compiler assumes 'char' to
  7465. be unsigned. Thanks to all who had offered assistance in finding this bug.
  7466.  
  7467. A Windows 32s port of mpeg2decode (and mpeg2play), courtesy of CompCore, is
  7468. available as mpeg2w11.zip. A DOS version of mpeg2encode and mpeg2decode is
  7469. available as mpeg2d11.zip.
  7470.  
  7471. Best regards,
  7472.  
  7473. Stefan Eckart, MPEG Software Simulation Group.
  7474.  
  7475. ---------------------------------------------------------------------------
  7476.  
  7477. ~Subject: layr_100
  7478.  
  7479. Look above in the DOS-section for a description.
  7480.  
  7481. ---------------------------------------------------------------------------
  7482.  
  7483. ~Subject: mpegaudio
  7484.  
  7485. [ You can find this under the name MPEGAUDI or ftp it from the IUMA-   ]
  7486. [ server
  7487.  
  7488. URL=ftp://sunsite.unc.edu/pub/electronic-publications/IUMA
  7489.  
  7490. [ For a further description of IUMA look into the WHERE-INFOS section. ]
  7491.  
  7492. Last updated 1/5/94
  7493.  
  7494. The good news is that source is now available. Look in /IUMA/mpeg_players
  7495. for the file mpegaudio.tar.Z 
  7496.  
  7497. We will continue to gather source and executables and hope that some
  7498. enterprising shareware authors or academics will provide various platforms
  7499. with real-time players. According to Jared V Boone below, the Xing
  7500. real-time player for Windows plays only the lower half of each subband of
  7501. only one of the two channels. By my ears, that's pretty good.
  7502.  
  7503. Another worthy undertaking would be porting the source to the DSPs
  7504. increasingly being found on motherboards and add-in cards, such as the Mac
  7505. AV series' AT&T 3210 or the Turtle Beach MultiSound's Motorola 56001, for
  7506. real-time full-quality encoding and playback.
  7507.  
  7508. That would be cool. =)
  7509.  
  7510. -IUMA staff
  7511.  
  7512. Here's the latest word on other non-commercial MPEG audio players for Unix
  7513. workstations.
  7514.  
  7515. I found this in a zip file, the test suite missing, as well as the Makefile.
  7516.  
  7517. I hacked together a quick makefile, and altered the musicout code so that if
  7518. the destination filename is "stdout" it writes the song to stdout so you can
  7519. pipeline it into sox then into /dev/audio or your equivilant.  (Handling
  7520. 30 meg files takes mucho diskspace I dont have :)
  7521.  
  7522. Basically, all you need to do is run it in a pipeline:
  7523.  
  7524. decode snd.mp2 stdout | sox [your favorite opts] > /dev/audio (or equiv)
  7525.  
  7526. >Some of those favorite opts:
  7527. >sox -t .raw -r 44100 -s -w -c 2 file.mp2.dec -t .au -r 8000 file1.au 
  7528. >sox -t .au -c 2 -w -s file1.au -t .au -c 1 -b -u file2.au avg
  7529.  
  7530. I have both encoded and decoded with this.  I decoded a song off the IUMA 
  7531. archives, and encoded a topgun soundtrack I digitzed myself.  One thing to 
  7532. note, at the default encoding bitrate of 384 bits, things dont compress hardly
  7533. at all, you'll want to input something like 128 bits, which does on average
  7534. 8-10:x1 compression.
  7535.  
  7536. Encoding takes a *LONG* time... :)
  7537.  
  7538. -Crh
  7539.     Charles Henrich Michigan State University henrich@crh.cl.msu.edu
  7540.                      http://rs560.msu.edu/~henrich/
  7541.  
  7542. ---------------------------------------------------------------------------
  7543.  
  7544. ~Subject: maplay
  7545.  
  7546. From: "Tobias 'Doping' Bading" <bading@cs.tu-berlin.de>
  7547.  
  7548. This announcement has been posted to the following newsgroups:
  7549.   alt.comp.compression, comp.compression, alt.binaries.multimedia,
  7550.   comp.multimedia, alt.binaries.sounds.misc, de.alt.binaries.sounds
  7551. last edit: 6/23/94 14:36:07
  7552.  
  7553. Hi MPEG audio fans,
  7554.  
  7555. I'd like to announce the second release of my free, software-only MPEG
  7556. audio player maplay. Those of you who are already familiar with maplay 1.1
  7557. may take a look at the list of changes in version 1.2:
  7558.   - required CPU time reduced by 50%
  7559.   - support of 16 bit soundcarts under Linux
  7560.     Implemented by Louis P. Kruger (lpkruger@phoenix.princeton.edu)
  7561.   - 8 kHz u-law realtime playback on amd devices (SPARC 2/IPX/...)
  7562.     or conversion to 8 kHz u-law to stdout
  7563.     Based on an implementation by Jim Boucher (jboucher@flash.bu.edu)
  7564.   - some bug-fixes (-u options, Solaris 2.3 problem, problems with older
  7565.     GNU C++ releases, makedepend usage removed)
  7566.  
  7567. All in all version 1.2 is now capable of
  7568.   - playing MPEG audio layer I or II streams on SPARC 10 (SunOS 4.1.3 or
  7569.     Solaris 2.x), Silicon Graphics Indigo (IRIX 4.0.x or IRIX 5.x) and Linux
  7570.     machines in nearly CD-quality. On a SPARC 10/40, maplay needs about
  7571.     46% CPU time for realtime stereo playback and 26% for mono playback.
  7572.     (maplay can't be compiled under IRIX 5.x because of the missing audio
  7573.      library, but an IRIX 4.0.5F binary works under IRIX 5.x, too)
  7574.   - playing these streams in 8 kHz u-law format on SPARC 2/IPX/...
  7575.     (SunOS 4.1.x) machines using the amd device. On a SPARCstation IPX,
  7576.     maplay needs about 43% CPU time for realtime mono playback.
  7577.   - decoding streams to raw 16 bit pcm format at the frequency of the stream
  7578.     (32, 44.1 or 48 kHz) or to 8 bit u-law format downsampled to 8 kHz.
  7579.  
  7580. The C++ sourcecode of maplay 1.2 and a short layer II MPEG audio stream
  7581. for testing purposes has been posted to alt.binaries.multimedia on 6/23/94.
  7582.  
  7583. The sources and some binaries are available via the ftp server
  7584.  
  7585. URL=ftp://ftp.cs.tu-berlin.de/incoming/maplay1.2/
  7586.  
  7587. It contains:
  7588. -rw-r--r--   1 bading   doping      4290 Jun 23 14:20 ANNOUNCEMENT
  7589. -rw-r--r--   1 bading   doping     95691 Jun 23 14:19 maplay1_2.tar.Z
  7590. -rwxr-xr-x   1 bading   doping     96497 Jun 22 12:30 maplay_indigo.Z*
  7591. -rwxr-xr-x   1 bading   doping     81469 Jun 22 12:12 maplay_sol2.Z*
  7592. -rwxr-xr-x   1 bading   doping     88881 Jun 22 12:17 maplay_sunos4_1_3.Z*
  7593. -rwxr-xr-x   1 bading   doping     93125 Jun 22 12:35 maplay_ulaw_sunos4_1_3.Z*
  7594. -rw-r--r--   1 bading   doping    372821 Jun 23 12:16 things.mp2
  7595.  
  7596. Due to slow Internet connections to this site, please use the mail server
  7597. mail-server@cs.tu-berlin.de. Send an email to this address with the contents
  7598. SEND incoming/maplay1.2/maplay1_2.tar.Z
  7599. and you will receive a mail with an uuencoded copy of the requested file.
  7600. Sending a mail containing "SEND help" returns a mail with more infos about
  7601. this mail server.
  7602.  
  7603. The available precompiled binaries are (in compressed format)
  7604.   - maplay_sunos4_1_3.Z
  7605.     for SPARCstations with a dbri device (e.g. SPARC 10, CD-quality)
  7606.     under SunOS 4.1.x (created under SunOS 4.1.3)
  7607.   - maplay_ulaw_sunos4_1_3.Z
  7608.     for SPARCstations with an amd device (e.g. SPARC 2 or IPX, telephone
  7609.     quality) under SunOS 4.1.x using 8 kHz u-law output
  7610.     (created under SunOS 4.1.3)
  7611.   - maplay_sol2.Z
  7612.     for SPARCstations with a dbri device (e.g. SPARC 10, CD-quality)
  7613.     under Solaris 2.x (created under Solaris 2.3 [= SunOS 5.3])
  7614.   - maplay_indigo.Z
  7615.     for Silicon Graphic Indigo machines (CD-quality)
  7616.     under IRIX 4.0.x or IRIX 5.x (created under IRIX 4.0.5F)
  7617.  
  7618. To extract the source code, you may use "zcat maplay1_2.tar.Z | tar xvf -"
  7619. or "uncompress maplay1_2.tar.Z ; tar xvf maplay1_2.tar". Please take a look
  7620. at the README file next.
  7621. For a binary, you may use "uncompress maplay_sunos4_1_3.Z".
  7622.  
  7623. You may also take a look at the Internet Underground Music Archive (IUMA)
  7624. ftp server sunsite.unc.edu (152.2.22.81) in the directory
  7625. /pub/electronic-publications/IUMA/audio_utils/mpeg_players/Workstations
  7626.  
  7627. If you are also looking for an encoder, please take a look at the file
  7628. /pub/electronic-publications/IUMA/audio_utils/converters/source/mpegaudio.tar.Z
  7629. on the IUMA ftp server. It contains sources for an encoder and a decoder.
  7630.  
  7631. That's all for now,
  7632.                     Tobias Bading   (bading@cs.tu-berlin.de)
  7633.  
  7634. ---------------------------------------------------------------------------
  7635.  
  7636. ~Subject: Scanning MPEG's ...
  7637.  
  7638. STC Version 1.0
  7639.  
  7640. A simple program that prints and plots 
  7641. the bits-per-picture of a MPEG-1 or MPEG-2 bitstream file.  The program is
  7642. called "stc" (since it only checks for picture_start_code's and thus runs
  7643. very quickly).  stc can be conveniently run in conjunction with an MPEG 
  7644. encoder, since stc can wait on the bitstream file and plot new points as
  7645. they become available (or produce a new graph if the bitstream file becomes
  7646. shorter, presumably because the MPEG encoder was restarted).
  7647.  
  7648. stc is only about 500 lines of C code, but it uses gnuplot for plotting.
  7649. stc was developed for an x-windows display and postscript printer, but it
  7650. can be very easily modified to use any of the many other displays and printers
  7651. that gnuplot supports.
  7652.  
  7653. Simply compile stc.c with your favorite ANSI-C compiler, and that's all there 
  7654. is to it.  For graphing functions, you must have gnuplot in your $PATH.
  7655.  
  7656.  * Copyright (c) 1993 by The Trustees of Columbia University in 
  7657.  * the City of New York.
  7658.  * All rights reserved.
  7659.  
  7660. ---------------------------------------------------------------------------
  7661.  
  7662. ~Subject: MPEG decoder...
  7663.  
  7664. Date: Sun, 2 Jan 1994 22:57:48 -0800
  7665. From: Jared V Boone <jboone@patriot.wtfd.orst.edu>
  7666.  
  7667. I have an MPEG decoder that I can make available.  It is in C and I have
  7668. succeeded in compiling it under Windows NT Visual C++ and NetBSD 0.9 with GNU
  7669.  V2.4.  The code is rather rough, only decodes Layer II, and is rather
  7670. slow.  However, I figure if I release the code to the public, some rocket
  7671. scientist can make it ran fast...  My only conditions are that I am acknowleged
  7672. and notified when someone uses the code in a freeware/shareware/commercial
  7673. product.  Let me know if you're interested.
  7674.  
  7675.     - Jared Boone, Oregon State University
  7676.       (jboone@instruction.cs.orst.edu)
  7677.  
  7678. P.S.  I'm also working on an encoder.  It appears that Xing's encoder is not
  7679. all that great (sound quality), and also does not conform to the MPEG-I spec.
  7680. If you'd like, I can keep you posted on this as well...
  7681.  
  7682. ---------------------------------------------------------------------------
  7683.  
  7684. ~Subject: MPEGTool
  7685.  
  7686. MPEGTool is an application which combines  MPEGTool  encoder  and
  7687. MPEGTool statistics with X11/Motif based Graphical User Interface
  7688. (GUI). MPEGTool encoder is an MPEG-1 encoder for RGB and CCIR-601
  7689. format  input video sequences. MPEGTool statistics is a graphical
  7690. statistics tool which can be used to analyze the statistical pro-
  7691. perties of the encoding process. MPEGTool allows a user to speci-
  7692. fy several of the MPEG parameters such as the intraframe  to  in-
  7693. terframe ratio, and the quantizer scale through its GUI.
  7694.  
  7695. MPEGTool has been tested on Sun SparcStation and HP9000  current-
  7696. ly.   To  compile  under  these  machines,  see  instructions  in
  7697. Makefile.
  7698.  
  7699. GUI of MPEGTool is based on Motif toolkit from the Open  Software
  7700. Foundation  (OSF),  so  Motif (Xm) libraries as well as X Toolkit
  7701. (Xt)  libraries  and  Xlib  are  required  to  compile  MPEGTool.
  7702. Although  MPEGTool can be executed under several window managers,
  7703. Motif window manager (mwm) is recommended. We've tested mwm, Open
  7704. look  window  manager  (olwm), Tab window manager (twm). With the
  7705. twm, we recommend to  put  'DecorateTransients'  in  your  .twmrc
  7706. file.
  7707.  
  7708. MPEGTool supports disk and tape device for video data  input  and
  7709. MPEG  code  output. Also, MPEGTool creates statistics data on the
  7710. disk. Statistics data requires around 1/350  to  1/250  of  video
  7711. data  size  and  MPEG  code requires 1/10 to 1/5 depending on the
  7712. parameter.
  7713.  
  7714. MPEGTool encoder encodes RGB/CCIR-601  format  video  input  data
  7715. from  tape  or  disk device by MPEG-1 specification and write the
  7716. encoded data into tape or disk. In addition, the statistics  data
  7717. can be stored into disk device for MPEGTool statistics analysis.
  7718.  
  7719. We can set several encoding parameters from MPEGTool Encoder win-
  7720. dow.  For setting device related parameters, click Configure but-
  7721. ton and modifying parameters in  MPEGTool  Encoder  Configuration
  7722. window. To start Encoding, click Start and MPEGTool begins encode
  7723. if there is no parameter error or device related error.
  7724.  
  7725. MPEGTool statistics creates types of graphs to analyze  statisti-
  7726. cal properties of MPEG encoded video stream. Four types of graphs
  7727. can be selected, Distribution, Generation Record, Autocorrelation
  7728. and  Interarrival Time. First three of these plot each statistics
  7729. of   MPEG   code   in   five   levels,   Bit/Frame,    Bit/Slice,
  7730. Bit/MacroBlock,  ATM/Frame and ATM/Slice. Interarrival Time plots
  7731. the time elapsed between arrivals of ATM packets within a  frame.
  7732. The interarrival times are calculated from the bits generated per
  7733. macroblock within a frame.  This interarrival time is  normalized
  7734. to units of X seconds (where X will depend on the hardware imple-
  7735. mentation of the coder).
  7736.  
  7737. "MPEGTool: An X windows  based  MPEG   encoder   and   statistics
  7738. tool", Proceedings of ACM Multimedia '93, Anaheim, CA
  7739.  
  7740. This paper contains  more  details  and  several  examples  about
  7741. MPEGTool.   PostScript  file of this paper is placed on anonymous
  7742. ftp on atum.ee.upenn.edu.
  7743.  
  7744. ---------------------------------------------------------------------------
  7745.  
  7746. ~Subject: What is "SECMPEG" ?
  7747.  
  7748.   SECMPEG is first a newly defined stream, that ensures the service
  7749.   of confidentiality and integrity for a MPEG-I-video-stream. 'Cause
  7750.   of the amount of multimedia-data it is NOT possible to use the same
  7751.   crypto- or checking-techniques for multimedia-data then for normal
  7752.   files or streams.
  7753.  
  7754. <IMG SRC="secmpegf.gif">
  7755.  
  7756.   Therefore we defined a new stream, containing additional security
  7757.   information. We tested and filtered the MPEG-I-stream to ensure that
  7758.   only important and relevant data is encrypted or checked. The newly
  7759.   desinged methods are not proofed but quite good tested. We can't be
  7760.   sure so far, if these method really do what they are designed for.
  7761.  
  7762. <IMG SRC="secmpegm.gif">
  7763.  
  7764.   It is second a tool, that can insert and delete the confidentiality
  7765.   and integrity data into/from a MPEG-I-stream.
  7766.  
  7767.   If you get any results to proof our methods, we hope to here from you !
  7768.  
  7769.   More information is available from te authors, like some PostScript-
  7770.   files, pictures and graphs.
  7771.  
  7772.  
  7773.   Where is it ?
  7774.  
  7775.   It will stored on our ftp-server in the next days (probably there):
  7776.  
  7777.         URL= ftp://ftp.cs.tu-berlin.de/pub/msdos/dos/graphics/secmpeg.zip
  7778.              (the DOS-Version)
  7779.  
  7780.   or probably in the unix-directory somewhere.
  7781.  
  7782.  
  7783.   How does it compile ?
  7784.  
  7785.   The program already compiles under
  7786.  
  7787.   - SunOS 4.1.x            using cc or gcc
  7788.   - SunOS 5.0              using cc or gcc
  7789.   - Solaris 2.1            using cc or gcc
  7790.   - INTERACTIVE Unix 2.2.1 using cc or gcc
  7791.   - Linux                  using gcc
  7792.   - MS-DOS                 using gcc or Borland C 2.0 (tcc),
  7793.                            the dos-port shoulb be included as
  7794.                            executable in the archive
  7795.  
  7796.   You need a compiler, that understands ANSI-C so far, but the rest is
  7797.   straight forward C, so it should compile nearly everywhere.
  7798.  
  7799.  
  7800.   What can you do ?
  7801.  
  7802.   Permission to use, copy, modify, and distribute this software and
  7803.   its documentation for any purpose and without fee is hereby granted,
  7804.   provided that the archive remains complete, that this author notice
  7805.   will appear in all copies and as long as you don't try to make money
  7806.   off it, or pretend that you wrote it.
  7807.  
  7808.  
  7809.   Authors
  7810.  
  7811.   Juergen Meyer                Frank Gadegast
  7812.   Sonnenallee 50               Leibnizstr. 30
  7813.   12045 Berlin GERMANY         10625 Berlin GERMANY
  7814.  
  7815.   Access: jm@cs.tu-berlin.de
  7816.   Access: phade@cs.tu-berlin.de 
  7817.  
  7818. ---------------------------------------------------------------------------
  7819.  
  7820. ~Subject: PVRG-MPEG Codec
  7821.  
  7822. From: msimmons@ecel.uwa.edu.au (Michael Simmons - mgmt_staff)
  7823. Subject: Standford MPEG codec
  7824. Date: Thu, 25 Feb 1993 16:07:18 +0800 (WST)
  7825.  
  7826. MPEG  Image and Image sequence compression/decompression C software engines
  7827.  
  7828. The Portable Video Research Group at Stanford have developed
  7829. image/image sequence compression and decompression engines (codecs)
  7830. for MPEG, CCITT H.261, and JPEG. The primary goal of these codecs is
  7831. to provide the functionality - these codecs are not optimized for
  7832. speed, rather completeness, and some of the code is kludgey.
  7833.  
  7834. Development of MPEG, P64, and JPEG engines is not the primary goal of
  7835. the Portable Video Research Group.  Our research is focused on
  7836. software and hardware for portable wireless digital video
  7837. communication.  For more information about current research, please
  7838. send e-mail to Professor Teresa Meng at meng@tilden.stanford.edu.
  7839.  
  7840. COMMENTS/DISCLAIMERS:
  7841.  
  7842. This code has been compiled on the Sun Sparc and DECstation UNIX
  7843. machines; some code has been further checked on the HP workstations.
  7844.  
  7845. For comments, bugs, and other mail relating to the source code, we
  7846. appreciate any comments. The code author can be reached at Andy C.
  7847. Hung at achung@cs.stanford.edu.  The standard public domain disclaimer
  7848. applies: Caveat Emptor - no guarantee on accuracy or software support.
  7849.  
  7850. References related to these codecs should NOT use any author's name,
  7851. or refer to Stanford University.  Rather the Portable Video Research
  7852. Group or the acronym (PVRG) should be used, such as PVRG-MPEG,
  7853. PVRG-P64, PVRG-JPEG.
  7854.  
  7855.                PVRG-MPEG CODEC: (MPEGv1.1.tar.Z) [ is now MPEGv1.2.tar.gz ]
  7856.  
  7857. This public domain video encoder and decoder was generated according
  7858. to the Santa Clara August 1991 format.  It has been tested
  7859. successfully with decoders using the Paris December 1991 format. The
  7860. codec is capable of encoding all MPEG types of frames. The algorithms
  7861. for rate control, buffer-constrained encoding, and quantization
  7862. decisions are similar, but not identical, to that of the (simulation
  7863. model 1-3) MPEG document.  The rate control used is a simple
  7864. proportional Q-stepsize/Buffer loop that works though not very well -
  7865. better rate-control is the essence for good quality buffer-constrained
  7866. MPEG encoding.  Verification of the buffering is possible so as to
  7867. provide streams for real-time decoders.
  7868.  
  7869. The MPEG codec performs compression and decompression on raw raster
  7870. scanned YUV files. The companion display program for the X window
  7871. system is described in section IV) below.  A manual of approximately
  7872. 50 pages describes the program's use.
  7873.  
  7874. There are also MPEG compressed files from the table tennis sequence in
  7875. tennis.mpg and the flower garden sequence in flowg.mpg.
  7876.  
  7877. This codec was recently tested with the MPEG decoder of the Berkeley
  7878. Plateau Research group. If what you want is decoding and X display,
  7879. then you might want to look into their faster public domain MPEG
  7880. decoder/viewer. The Berkeley player is available via anonymous ftp
  7881. from
  7882.  
  7883. URL=ftp://mm-ftp.cs.berkeley.edu//pub/multimedia/mpeg/mpeg-2.0.tar.Z
  7884.     [128.32.149.157]
  7885.  
  7886.  
  7887. ACKNOWLEDGEMENTS:
  7888.  
  7889. Funded by the Defense Advanced Research Projects Agency.
  7890.  
  7891. I am especially grateful to Hewlett Packard and Storm Technology for
  7892. their financial support during the earlier stages of codec
  7893. development.  Any errors in the code and documentation are my own.
  7894. The following people are acknowledged for their advice and assistance.
  7895. Thanks, one and all.
  7896.  
  7897.         The Portable Video Research Group at Stanford: Teresa Meng,
  7898.         Peter Black, Ben Gordon, Sheila Hemami, Wee-Chiew Tan, Eli Tsern.
  7899.  
  7900.         Adriaan Ligtenberg of Storm Technology.
  7901.         Jeanne Wiseman, Andrew Fitzhugh, Gregory Yovanof and
  7902.         Chuck Rosenberg of Hewlett Packard.
  7903.         Eric Hamilton and Jean-Georges Fritsch of C-Cube Microsystems.
  7904.  
  7905.         Lawrence Rowe of the Berkeley Plateau Research Group.
  7906.         Tom Lane of the Independent JPEG Group.
  7907.         Katsumi Tahara from Sony.
  7908.         Ciaran Mc Goldrick.
  7909.         Karl Lillevold
  7910.  
  7911. ---------------------------------------------------------------------------
  7912.  
  7913. ~Subject: wdgt
  7914.  
  7915. [ Jim Frost was putting the Berkeley-Code into a Motif and/or Xt-Widget. ]
  7916. [ Its called WDGT, Version 2.0b is up-todate, but no description         ]
  7917. [ was included. This is from the man-page:]
  7918.  
  7919. Mpeg  is  a  version  of the MPEG player from the Berkeley
  7920. Plateau Research Group group as a widget.  It can be  used
  7921. either as a Motif widget subclassed from XmPrimitive or as
  7922. a toolkit-independant widget subclassed from Core.
  7923.  
  7924. Mpeg inherits from Core. The Motif version  also  inherits from XmPrimitive.
  7925. The class pointer is xmpegWidgetClass. The class name is Xmpeg.
  7926.  
  7927. Archive-name: mpeg-faq/part7
  7928. Last-modified: 1995/06/07
  7929. Version: v 4.0 95/06/07
  7930. Posting-Frequency: bimonthly
  7931.  
  7932. This widget was implemented by making minimal  changes  to
  7933. the mpeg2.0 source code. Because of this, there are a num-
  7934. ber of global variables, functions and constants  that  do
  7935. not follow normal widget conventions.  Many of the mpeg2.0
  7936. options are not supported yet. Shared memory may not  work
  7937. -  it  has  not been tested.  On stepping through a movie,
  7938. the number of frames shown per step is indeterminate.
  7939.  
  7940.  
  7941. ---------------------------------------------------------------------------
  7942.  
  7943. ~Subject: SUBSECTION - VMS
  7944.  
  7945. ---------------------------------------------------------------------------
  7946.  
  7947. ~Subject: vms MPEG
  7948.  
  7949. The VMS MPEG viewer is built by acquiring the regular Unix-specific mpeg
  7950. source, then getting the VMS specific code.  Using this mesh of code, you
  7951. build your own VMS-compatible MPEG player.
  7952.  
  7953. First, get the regular UNIX Mpeg viewer per the instructions in part "c"
  7954. above.  Then get the following:
  7955.  
  7956. URL=ftp://mm-ftp.cs.berkeley.edu/pub/multimedia/mpeg/vms/
  7957.     [128.32.149.157]
  7958.  
  7959. Thanks to Terry Maton for this information.  Here is some text from him
  7960. which may be of help to VMS users:
  7961.  
  7962. First go to mm-ftp.cs.berkeley.edu in /pub/multimedia/mpeg and get the main
  7963. mpeg file mpeg_play.2.00.tar.Z, then cd to vms and get the file 
  7964. MPEG_PLAY-20-DECW.TAR_Z.  Now you have to decompress and tar the main file
  7965. first and then the vms file.  This means that the latest version of some
  7966. of the .c files are the correct ones for vms.
  7967.  
  7968. ---------------------------------------------------------------------------
  7969.  
  7970. ~Subject: SUBSECTION - MacIntosh
  7971.  
  7972. ---------------------------------------------------------------------------
  7973.  
  7974. ~Subject: Sparcle
  7975.  
  7976. From: maynard@elwing.otago.ac.nz (Maynard James Handley)
  7977. Subject: Sparkle 2.1.2 MPEG player for Macs
  7978. Date: Thu, 28 Jul 1994 10:24:46 GMT
  7979.  
  7980. Sparkle 2.12 A mac-look-and-feel MPEG and QT player and converter.
  7981.  
  7982. This should replace Sparkle 2.1 in the info-mac archives.
  7983. This version makes the following changes to Sparkle 2.1
  7984. * A few minor bugs were fixed.
  7985. * One major bug was fixed, which required extensive reworking of Sparkle 
  7986.   internals. This is why I haven't been able to get this version out 
  7987.   sooner.
  7988. * Somewhat better (though not yet great) support for QT movies with only 
  7989.   sound and no video.
  7990. * In reponse to many mail message from people who didn't understand the 
  7991.   new features in 2.1, I've added a lot more documentation, in the 
  7992.   ReadMe 2nd file, and I've added balloon help.
  7993.  
  7994. You will get slightly better results with this version if you throw away 
  7995. your old Sparkle preferences file (in the Preferences folder in the 
  7996. System folder) before running Sparkle 2.12. 
  7997. This isn't essential but will improve performance a little.
  7998.  
  7999. This version 
  8000. * is not PPC native
  8001. * does not support sound
  8002. * does not support apple events
  8003. * does not support online help
  8004. These are all high priorities, pretty much in that order.
  8005.  
  8006. As always, if you find any bug or anomaly in this code please tell me. 
  8007. The sooner you tell me, the sooner I'll fix it.
  8008. As always there remain a few rough edges to this program, though I hope 
  8009. most of them won't be too distressing to users. Like previous rough 
  8010. edges, they'll be done away with in time.
  8011.  
  8012. %%%
  8013. !!! If you write to me PLEASE give me a decent address I can reply to.
  8014. !!!    About 10% of the e-mail I receive has a bogus return address---I try 
  8015. !!!    to reply to you and a few hours or days later I get a message from the 
  8016. !!!    mail system that my mail could not be delivered.
  8017. !!!    This is very frustrating to me and a waste of your and my time. 
  8018. !!!    I have NEVER just ignored mail sent to me about Sparkle. If I don't 
  8019. !!!    reply to you, it's because you sent me mail with a garbage return address.
  8020. !!!    Check out your mail system and write to me again when it works properly.
  8021. %%%
  8022.  
  8023. WHAT IS IT?
  8024. Sparkle plays MPEGs, PICTs and QT movies and converts between them. It is
  8025. multifinder friendly and, with enough memory, will open multiple 
  8026. documents at once.
  8027. It is free. 
  8028.  
  8029. REQUIRES: 
  8030. System 7 or greater.
  8031. QuickTime 1.6 or greater.
  8032. An 020 based mac or greater.
  8033. This version requires the Thread Manager.
  8034.  
  8035. You can ftp Sparkle from
  8036.  
  8037. URL=ftp://sumex-aim.stanford.edu/info-mac/grf/util/
  8038.  
  8039. (or a mirror like mrcnext.cso.uiuc.edu)
  8040. You can ftp the Thread Manager from
  8041.  
  8042. URL=ftp://ftp.apple.com/dts/mac/sys.soft/extensions/Thread_manager_201.hqx
  8043.  
  8044. Maynard Handley
  8045. maynard@elwing.otago.ac.nz 
  8046. July 28 1994
  8047.  
  8048. ---------------------------------------------------------------------------
  8049.  
  8050. ~Subject: Qt2MPEG
  8051.  
  8052. From: Rainer Menes <menes@statistik.tu-muenchen.de>
  8053. Date:     Wed, 6 Oct 1993 13:20:08 +0100
  8054.  
  8055. Dear qt2mpeg users,
  8056.  
  8057. I like to announce a new version of my qt2mpeg util. This version is a 
  8058. beta  version but should be very stable I hope.
  8059.  
  8060. The best news about the new version is that it supports Quicktime to MPEG
  8061. conversation of any length. The last version, as some of you have 
  8062. reported, had a very seriuos bug which crash your mac very badly. Now 
  8063. this shouldn't happend any more.
  8064.  
  8065. I putted the stuff on my ftp site suniams1.statistik.tu-muenchen.de in the
  8066. dir incoming/qt2mpeg.
  8067.  
  8068. What will you need? It depends if you are a firsttime user or you are 
  8069. using the older version right now.
  8070.  
  8071. 1. Firsttime user should get qt2mpeg1.1b.sit.bin. This includes all you 
  8072.    need to do the qt to MPEG conversation.
  8073.    
  8074. 2. To update your older version get only qt2mpeg_update.sit.bin. This 
  8075.    will save bandwidth on internet (Thank you),and replace the old files 
  8076.    with the new once.
  8077.    
  8078. Some fun stuff is also in this dir. To test my new qt2mpeg I made a mpeg 
  8079. movie with a realtime length of 1 min. The size is 192x144 with 25 fps.
  8080. The movie was produced from some videos I made 1992 in Italy while 
  8081. skiing there. The cut was done with Adobe Premiere 3.0 and than converted
  8082. with qt2mpeg 1.1b to a mpeg movie. The first scenes show myself and the 
  8083. last two show me and Claudia a good friend of mine (Thanks Claudia). Hope 
  8084. you find this movie fun to watch. (I will try a second one next year in 
  8085. 382x288 with 25fps) The file is called SkiRainer.mpg and is about 1.2 
  8086. MByte in size. The compression rate is 1:102 and the quality is still 
  8087. very good I think.
  8088.  
  8089. This is beta version qt2mpeg 1.1!
  8090.  
  8091. If you find my utils usefull please send me nice postcard!!!!! You will 
  8092. find address below at the end of this readme file.
  8093.  
  8094. This is my second beta version of Quicktime to MPEG, so you will find bugs.
  8095.  
  8096. Changes from the version 0.1
  8097.  
  8098. - The qt2yuv converter now runs even when used on non truecolor screens.
  8099.   Sorry for this former bug. I allway run my Quadra in truecolor and never
  8100.   tested it in an other mode.
  8101. - The MPEG encoder now is version 1.2 and not 1.0 alpha. (mpeg)
  8102. - The MacMiNT version is updaten to the lastest status. The background
  8103.   feature now work great.
  8104. - The old version only runs on a 68040 with FPU so all users without a
  8105.   full blow Quadra where not able to run the software. Now you can run
  8106.   this software on an 68030 with 68882. Hopefully with softfpu the
  8107.   Centris machines with a 68LC040 will be able to run this converter too. 
  8108.   Please let me know if not.
  8109. - added a new MPEG converter to the software. After alot of pproblems
  8110.   I got the mpeg encoder from Berkeley running (mpeg_encode).
  8111. - added a new program called qt2yuvBerkeley. This will generate the 
  8112.   different yuv files and an other shell script to make conversation
  8113.   as easy as possible.
  8114.  
  8115. Changes from the version 0.5b
  8116.  
  8117. - removed the stanford encoder from the distribution. Only takes space
  8118.   and isn't as fast the berkeley encoder. (Also it produces three times
  8119.   as mutch files as the berkeley once. For big movies this might get a 
  8120.   problem).
  8121. - change berekeley encoder to the new version 1.2. It works now with alot 
  8122.   better quality. (Now all feature of the UNIX version). Thanks to Larry
  8123.   Rowe and his team.
  8124. - dropped the qt2yuv program, because it only produces stanford encoder 
  8125.   files.
  8126.  
  8127. - qt2yuvBerkeley got some bug fixes. Main changes:
  8128.   1. For some reasons the display window does show the movie centered.
  8129.      This bug is fixed now. All movies should work without problems.
  8130.      I also tested it with Adobe Premiere 3.0 which produce multiple
  8131.      segment files with differned compressor and it worked.
  8132.   2. The bug which cause a unrecoverble crash when reaching the heaplimit 
  8133.      is fixed. The converter stops when the heapspace get below 100 KByte. 
  8134.  
  8135.   3. Added support for YUV conversation of qt movies of any length.
  8136.      First the converter will count all frames in the qt movie and inform
  8137.      you in its statuswindow about it. Now you have to enter the startframe
  8138.      on which the converter starts with it conversation. Next you will be 
  8139.      asked if you want continuemode or not. 
  8140.      
  8141.      Yes = if you convert multiple segment keep the overall startframe 
  8142.            in the parameter file allways 0.
  8143.      No = The overall startframe is set to the actual startframe!!! Might
  8144.           be usefull when converting only a special part of the movie.
  8145.      
  8146.      y or n is ok to select on of this options!!!
  8147.      
  8148.      After you have reached the end of the conversation you will be 
  8149.      informated how many frames the converter could convert in this 
  8150.      session. If you didn't reach the end write down the number of the 
  8151.      continue startframe and quit the converter. Now restart it and use the
  8152.      same parameters and set the new startframe to the number the last 
  8153.      run told you.
  8154.  
  8155. - removed sources of the encoder because it took alot of space. All of 
  8156.   you with ftp access are able to get the source from toe.cs.berkeley.edu.
  8157.        
  8158. Software you will need too: You could use either mpeg player 0.3 (no 
  8159. suppport for it anymore. Stop because Sarkle is far better and Apple will 
  8160. bring MPEG playing support next year for Quicktime) or Sparkle 1.6. If you 
  8161. love a good Mac interface Sparkle is the way to go.
  8162.   
  8163. Because this is a beta version I like to get your feedback. So if you find
  8164. something you don't like, problems or what ever, sende me a mail and tell
  8165. me about. Thank you.
  8166.  
  8167. Here first some short intro to my approche to convert Quicktime movies to
  8168. MPEG's. First the Quicktime to YUV converter is a FutureBasic program which
  8169. reads in any Quicktime movie and converts it to a three seperate Y,U,V 
  8170. files. YUV is color model used in video technics as for example MPEG. This
  8171. program should be really mac like to use. Sadly I couldn't make this
  8172. program
  8173. ran in background. I contacted the developers of FutureBasic, but they
  8174. still
  8175. don't know why my code wont run in background. I hope I could fix this in
  8176. a future version. The YUV to MPEG conversation is handled under MacMiNT,
  8177. a multitasking UNIX like development enviroment. I prefer to use MacMiNT 
  8178. because the MPEG converter which might run for hours, could run easy in 
  8179. background with out modifing the source code. This version of MacMiNT now 
  8180. has a stable background feature. I hope you will love MacMiNT as much as 
  8181. I do. I have also a version of the MPEG encoder which runs under MPW shell,
  8182. but without the background feature. (If you are interested in this code
  8183. send mail to me). 
  8184.  
  8185. The MPEG converter is based on the Berkeley mpeg 1.2 encoder you will find
  8186. on
  8187. toe.cs.berkeley.edu. The YUV converter was done by me as said befor in 
  8188. FutureBasic to speedup development time alot. As you see this software is 
  8189. first approche to help you using MPEG. I hope a friend of mine who has 
  8190. writen Sparkle will continue to work on a MPEG encoder integrated into 
  8191. Sparkle.
  8192.  
  8193. You will find this software on:
  8194.  
  8195. URL=ftp://suniams1.statistik.tu-muenchen.de/pub/mac/MPEG/encoder/
  8196.     [131.159.64.1]
  8197.  
  8198. ---------------------------------------------------------------------------
  8199.  
  8200. ~Subject: Audio on Macintosh ?!
  8201.  
  8202. This just in...
  8203.  
  8204. There is now a program for Macs that allows automatic real-time playback
  8205. of MPEG files called MPEG/CD.  You can download it from ftp.iuma.com,
  8206. or check out our Macintosh help page with a web browser at:
  8207.  
  8208. http://www.iuma.com/IUMA/html/use/Macintosh.html
  8209.  
  8210. The following is a text dump of the Mac help page...
  8211.  
  8212.  
  8213.    
  8214.                          PLAYING AUDIO ON A MACINTOSH
  8215.                                        
  8216.     Last updated: 95-02-14
  8217.     
  8218.    
  8219.    
  8220.      _________________________________________________________________
  8221.    
  8222.    New!!! MPEG CD for Macintosh is now all you need in order to hear 
  8223.    realtime MPEG audio on your Macintosh or decompress an MPEG file to 
  8224.    an easily readable AIFF. All you need to do is download ...
  8225.    
  8226.                      MPEG_CD__1.0.1.sea.bin (480 Kb)
  8227.  
  8228.    ... from URL=//ftp.iuma.com/audio_utils/mpeg_players/Macintosh/
  8229.  
  8230.    For system requirements for MPEG/CD, read the plain text Readme file.
  8231.    
  8232.      _________________________________________________________________
  8233.    
  8234.   CONFIGURING NETSCAPE FOR AUTOMATIC PLAYBACK
  8235.   
  8236.    Yes! You can now have Netscape automatically launch your MPEG audio
  8237.    player when you click on an MPEG audio file. Just follow these simple
  8238.    instructions...
  8239.  
  8240.     1. Click on Preferences under the Options menu in Netscape.
  8241.     2. Select Helper Applications from the menu in the Preferences
  8242.        window.
  8243.     3. Click on the New... button.
  8244.     4. Enter audio for the Mime type and x-mpeg for the Mime subtype.
  8245.     5. Enter mp2 in the Extensions box.
  8246.     6. Selct MPEG/CD for the Application and choose MPEG as the File
  8247.        type.
  8248.     7. Click on Launch application for the Action.
  8249.        
  8250.    ... and that should be it!
  8251.    
  8252.      _________________________________________________________________
  8253.  
  8254. Special thanks go to Brian Balthazor for bringing us this cool
  8255. not-so-little utility!
  8256.  
  8257. -Jeff Patterson
  8258.  IUMA Co-Czar
  8259.  
  8260. ---------------------------------------------------------------------------
  8261.  
  8262. ~Subject: SUBSECTION - Atari
  8263.  
  8264. [ Bainstorm is not continuing to develop their MPEG-Player for ]
  8265. [ the Atari, really sad :o( Maybe somebody can help them ?     ]
  8266.  
  8267. From: laurent@brasil.frmug.fr.net (Laurent Chemla)
  8268. Date: Fri, 10 Sep 1993 14:39:39 +0000 (GMT)
  8269.  
  8270.   Frank,
  8271.  
  8272.   Of course you're right. Raphael Lemoine replied quickly, directly online
  8273. on Compuserve, and as the author of our MPEG software he's quite disapointed
  8274. by the little interest there is about.
  8275.  
  8276.   As a commercial entity, Brainstorm is trying to sell his work. But this
  8277. kind of work is not an easy thing to sell. A few developpers asked us about
  8278. our software, but could'nt pay for it. An easy solution would be to sell it
  8279. to Atari Corp directly, and then developpers could get it from Atari at low
  8280. price. But Atari licensed Cinepak for this usage, and they aren't interested
  8281. in buying our MPEG. So we decided to forget it for a while.
  8282.  
  8283.   Our MPEG runs at the same (or so) rate, not depending on the resolution.
  8284. It uses some of our 'real time' dithering algorithms on Atari. Added to the
  8285. work on the DSP coding, you can see it's a good piece of software Raphael
  8286. did. But it's not enough for selling it as a Shareware library, because it
  8287. does'nt handle P and B frames nor the sound, and we wont work on it if we
  8288. cant expect to be paid for this work. I have personnally written a few news
  8289. about this software in the Atari's Usenet conferences, but only got 3 mails
  8290. in return, and nothing really exciting.
  8291.  
  8292.   Anyway, be sure we will tell you if anything new occurs about that.
  8293.  
  8294. Laurent Chemla @ Brainstorm
  8295.  
  8296. --
  8297. Laurent Chemla : chemla@cnam.cnam.fr or laurent@brasil.frmug.fr.net
  8298. Brasil BBS  - +33 1 44 67 08 44 -  Atari France developpers support
  8299.  
  8300. ---------------------------------------------------------------------------
  8301.  
  8302. ~Subject: SUBSECTION - Amiga
  8303.  
  8304. [ There are lots of other MPEG-ports for the AMIGA ]
  8305.  
  8306. mpeg2_0amiga.lha     gfx/show    50K  40 Berkeley MPEG player 2.0
  8307. mpegplay201_bin.lha  gfx/show   147K  43+MPEG player V2.01 executable
  8308. mpegplay201_src.lha  gfx/show   170K  43+MPEG player V2.01 sources
  8309. mpeg_player122.lha   gfx/show   206K 104+MPEG Player 1.22 (for all Amigas)
  8310.  
  8311. ---------------------------------------------------------------------------
  8312.  
  8313. ~Subject: MPEG2DCTV
  8314.    
  8315. This is a quick and dirty program to decompress MPEG video
  8316. streams to a DCTV display buffer.  'mpeg2dctv' _REQUIRES_ 
  8317. a 68020 or higher CPU, and a 68881 or higher FPU.  On an Amiga 3000,
  8318. (25 MhZ 68030 and 25 MhZ 68882), 'mpeg2dctv' plays at about one
  8319. frame per second in grayscale (the default option), and at about
  8320. 8/10 of a frame per second in full color. 
  8321.     
  8322. 'dctv.library' is copyrighted   1991 by Digital Creations, Inc.
  8323.              
  8324. The MPEG source code used in 'mpeg2dctv' is copyrighted   1992 by
  8325. the Regents of the University of California.
  8326.               
  8327. 'mpeg2dctv' is copyrighted   1993 by Benjamin Reich.
  8328.              
  8329. This software is provided AS IS.  It is provided free of charge, except
  8330. that if you find this program useful, I request that you make a donation
  8331. of US$10 (or the equivalent) to the charity of your choice.
  8332.                
  8333. -Benjamin Reich
  8334.                    Portal:    Counsellor
  8335.                    BIX:       ben_rich
  8336.                    Delphi:    BEN_RICH
  8337.                    Usenet:    Counsellor@cup.portal.com
  8338.                    U.S. mail: 805 Lincoln Drive
  8339.                               Voorhees, NJ  08043
  8340. ---------------------------------------------------------------------------
  8341.  
  8342. ~Subject: SUBSECTION - NeXT
  8343.  
  8344. ---------------------------------------------------------------------------
  8345.  
  8346. ~Subject: MPEG_Play.app
  8347.  
  8348. [ This piece of software is now available in Version 2.5. Its usally ]
  8349. [ called MPEG_Play.*, but due of filename conventions its called     ]
  8350. [ MPPLAY, mpegplay.* or mpeg_play.* .                                ]
  8351.  
  8352. This is a new release of MPEG_Play.app, a threaded program for displaying multiple MPEG videos with capability for visual cueing ("scrubbing").  Release 3.0 is required to run the application, so it should probably be archived with other 3.0 binaries.
  8353.  
  8354. MPEG Play is in the process of evolving from a bare-bones MPEG animation
  8355. viewer into a full-fledged NeXT application.  The current version is multi-
  8356. threaded and supports the simultaneous loading and playback of multiple
  8357. "mini-videos" at different rates as high as 28 frames per second.  There
  8358. is a group of "live controls" in the Window Settings panel which can be
  8359. manipulated even while the video is playing.  There is also a Transport
  8360. panel with tape deck buttons.  Both can be found in the Tools submenu.
  8361.  
  8362. MPEG Play will keep track of different settings for each window, reflecting
  8363. the current values in the various information panels whenever you select a
  8364. new main window.  When playback is complete, a few interesting performance
  8365. statistics are shown in the Playback Statistics panel.  This panel, as well
  8366. as a File Info Panel, can be found in the Info submenu.
  8367.  
  8368. Notes:
  8369.  
  8370. You may have to wait some time after opening a new file before it will be
  8371. shown.  The MPEG file must be decoded into memory to allow rewind and random
  8372. access.  The frames will be counted as they are loaded.
  8373.  
  8374. Playback is slightly slower when the Transport panel is visible, simply
  8375. because it takes some CPU time to update the frame indicators.  For maximum
  8376. speed, close the Transport panel and use the menu options for Stop, Pause,
  8377. and Play.
  8378.  
  8379. This version is not recommended for NeXT systems without substantial system
  8380. RAM and swap space.  I have not personally used this software on anything
  8381. other than a NeXTdimension with 88 MB of RAM, but future versions of MPEG
  8382. Play will be adjusted for any problems with other systems.
  8383.  
  8384. I have updated to version 2.0 of the mpeg_play code from Berkeley.
  8385. B&W support is temporarily disabled.
  8386.  
  8387. You can reach me as brianw@sounds.wa.com
  8388.  
  8389. Official place for this pice of software is:
  8390.  
  8391. URL=ftp://ftp.CS.ORST.EDU/software/NeXT/binaries/graphics/MPEGPlay2.6.FAT.tar.Z
  8392.  
  8393.     Brian Willoughby    Software Design Engineer, BSEE NCSU
  8394. NeXTmail welcome here    Sound Consulting: Software Design and Development
  8395. BrianW@SoundS.WA.com    Bellevue, WA
  8396.  
  8397. ---------------------------------------------------------------------------
  8398.  
  8399. ~Subject: mpegnext
  8400.  
  8401. This is a hack of Version 2.0 of the MPEG decoder from the Berkeley
  8402. Plateau Research Group.  (Please read their README.)  Basically, I
  8403. replaced all the X-Windows stuff with NeXTstep windows and discarded
  8404. all of the dithering stuff.  Don't need it since the NeXT is true color.
  8405. This version is specifically optimized for a 16bit color NeXTstation.
  8406. I did have to sacrifice some image quality to get the speed up.  I don't
  8407. know what its performance is because I use a NeXTdimension.  In fact I
  8408. would very much appreciated if some one would mail me the performance of
  8409. this decoder.  I am hoping for 6 frames/second.  The NeXTdimension gets
  8410. 5.5 frames/second.
  8411.  
  8412. To get other MPEG movies please read the notes from the Berkeley
  8413. Plateau Research Group.
  8414.  
  8415. gary@isr.recruit.co.jp
  8416. Media Design Center
  8417. Recruit Co.
  8418. Tokyo, JAPAN
  8419.  
  8420. ---------------------------------------------------------------------------
  8421.  
  8422. ~Subject: SUBSECTION - SGI
  8423.  
  8424.  
  8425. A publically available program which can convert SGI
  8426. movie files created with the IRIX 4.0.5 Movie Tools to MPEG.
  8427.  
  8428. It was all compiled on a SGI indigo Elan running 4.05.
  8429.  
  8430. Rob
  8431.         (kooper@cc.gatech.edu)
  8432.  
  8433.  
  8434. ===========================================================================
  8435.  
  8436. ~Subject: SECTION 4. - MPEG-RELATED HARDWARE
  8437.  
  8438. We even have MPEG-AUDIO-solutions now, but still not a lot of
  8439. information about them :o( who knows more ?
  8440.  
  8441. ---------------------------------------------------------------------------
  8442.  
  8443. ~Subject: MPEG audio Layer-3
  8444.  
  8445. From: popp@iis.fhg.de (Harald Popp)
  8446. Date: Wed, 16 Feb 1994 11:12:33
  8447.  
  8448. MPEG- Audio Layer-3: Best Music Quality at Lowest Bitrates!
  8449.  
  8450. Audio Export: PC board with realtime Layer-3 audio codec
  8451. Philips PKI: MAGIC codec for telecommunication networks
  8452. Telos Systems: ZEPHYR codec for ISDN, Switch 56 and other networks
  8453. Dialog 4: MUSICTAXI TYPE 3 for telecommunication networks and various PC 
  8454.           solutions
  8455. Fraunhofer-IIS: Objective Quality Assessment with the NMR meter 
  8456.                 (Noise-to-Mask Ratio)
  8457.  
  8458. ---------------------------------------------------------------------------
  8459.  
  8460. ~Subject: Video-Maker
  8461.  
  8462. From: jmm73@frmug.fr.mugnet.org (Jean-Michel Mercier)
  8463. Date: Tue, 22 Jun 93 22:07:34 MET DST
  8464.  
  8465. VITEC VIDEO-MAKER
  8466.  
  8467. Since December 92, there is a french MPEG PC-plugin. It's called
  8468. VIDEO MAKER and it's manufactured by :
  8469.  VITEC
  8470.  3 bis rue P. Baudry
  8471.  92140 CLAMART
  8472.  FRANCE
  8473.  tel (33) 1.46.29.03.00
  8474.  fax (33) 1.46.29.03.04
  8475.  
  8476. Features :
  8477. Claims to be the world 1st MPEG board.
  8478. 2 selectable video inputs NTSC/PAL/SECAM/S-VHS
  8479. Picture up to 768x576 (by step of 16)
  8480. Colors  : 256/32K/16M
  8481. Frame : 1 to 25 Fr/s
  8482. No need for VESA Features connector
  8483. 16 bit short card, no dip nor jumper, no DMA nor IRQ
  8484. Windows software :
  8485. IMAGER : record & compress moving or still picts.
  8486. MPEG PLAYER : full software MPEG decoder/player, doesn't need the board
  8487. (it seems that you can freely give this soft with your MPEG seqs.)
  8488. MULTIMEDIA MANAGER VM : well known software from Multimedia Telecom to
  8489. build your scripts with icons, sync. with sounds, etc...
  8490. DLL for MCI & AVI availables
  8491.  
  8492. What it's not said in the commercial :
  8493. The card doesn't sample sound today but a daughter board should become
  8494. available (you can still sample sound separ and the resync with M. MANAGER)
  8495. You can't use the full specs at the same time (ie 768x576, 16M colors,
  8496.  
  8497. 25 fr/s) even with a 486 as the compression is made by software
  8498. In fact, the sequence is 1st stored in memory using a proprietary
  8499. compression scheme and saved to disk as .VSF files. Then the offline
  8500. compression could be achived. It seems that a PC with 8Mbytes of RAM
  8501. should be able to record about 10 to 30 secondes of video.
  8502.  
  8503. What's on the board :
  8504. The board use Philips Digital Desktop video chipset (TDA8708+TDA8709+
  8505. SAA7191+SAA7197) witch provides 4:2:2 YUV video @ 14.75 Msmp/s
  8506. It doesn't use the SAA7192 color space converter to get RVB so this
  8507. should be done by software.
  8508. There is also an XC3042-100 FPLA from Xilinx and 1Mx8bits of dynamic
  8509. ram (70ns). Probably used for pre-compression.
  8510.  
  8511. The public price is 3500FF ($625) but Surcouf (Paris' computer store)
  8512. sells it about 2300FF ($410).
  8513. There was an ad in march issue of BYTE (p127) @ $695. For US & canada
  8514. the ad said to phone to 404-921-6167 or fax to 404-921-9243.
  8515.  
  8516. There is an test of this card (9 other ones) in june issue of the french
  8517. magazine "Multimedia Solutions".
  8518.  
  8519.  
  8520.      NOTE : I have nothing to do with VITEC. This is not an ad. It is
  8521.      my personnal understanding of VITEC's ads, magazines reports and
  8522.      phone calls to VITEC. Please contact VITEC for any contractual
  8523.      informations.
  8524.  
  8525. ---------------------------------------------------------------------------
  8526.  
  8527. ~Subject: Some MPEG chips
  8528.  
  8529. Some new chips are about to be available from SGS-Thomson :
  8530. STI3223 : motion estimator controller, intended to be used with
  8531. previously released STI3220
  8532. STI3230 : MPEG coder
  8533. STI3400 : MPEG coder (STI3240 coder + DCT processor)
  8534. STI3500 : MPEG 2 coder
  8535. Do you want me to get some more details fast ?
  8536.  
  8537. TI introduce the TMS320AV110 MPEG audio decoder based on TI's 16 bits
  8538. DSPs (about $14).
  8539.  
  8540. ---------------------------------------------------------------------------
  8541.  
  8542. ~Subject: Optibase
  8543.  
  8544. OPTIBASE's MPEG2000 (Herzliya - Israel, Canoga Park - Calif.)
  8545. It use an CCUBE (witch?), DSP56001 ant DCT chips from LSI.
  8546.  
  8547. ---------------------------------------------------------------------------
  8548.  
  8549. ~Subject: ReelMagic
  8550.  
  8551. [ And there it is, just real magic ;o) ]
  8552.  
  8553. ReelMagic MPEG-Video-decoder-card from Sigma Design
  8554.  
  8555. Video-Decoder-Specification
  8556. - MPEG-Video-Standard ISO 11172-Paris
  8557. - 32.768 colors
  8558. - Resolution 1024x768
  8559. - 30 frames/s
  8560. - Video Overlay
  8561.  
  8562. Audio-Specification
  8563. - MPEG-Audio Level I/II
  8564. - 8/16-bit PCM, 44 kHz sampling-rate
  8565. - Synthesizer Yamaha OPL2 compliant
  8566. - Audio Mixer PCM with FM or MPEG
  8567. - Frequence 20 Hz - 20 kHz
  8568. - Audio-Out Stereo-Headphone
  8569.             2x75mW with 32 Ohm
  8570.             2 V rms with 100 Ohm
  8571.  
  8572. System-Specification
  8573. - Standard ISA PBM PC 16 bit card
  8574. - VESA compliant Feature Connector 15 Pin
  8575. - DMA and IRQ-selection via Software (no Jumpers)
  8576. - SCSI-I, CD-ROM-driver (MSCDEX 2.2)
  8577. - Driver for Windows 3.1 and DOS 5.0 and higher
  8578. - Support of Windows OLE 2.0
  8579. - MPEG-compatible with VideoCD (CD-I coded movies !!!)
  8580. - Audio-compatible with DOS games and MPC sound standard
  8581.  
  8582.  
  8583. Price at Cebit'94:
  8584. - Reel Magic Lite (just the card) DM 679.-
  8585. - Real Magic with SCSI-interface  DM 899.-
  8586. - Real Magic Kit with Sony CD-ROM DM 1299.-
  8587.  
  8588. Contact:
  8589.  
  8590. SIGMA Designs, Inc.
  8591. Leopoldstrasse 28a/II
  8592. 80802 Muenchen/GERMANY
  8593. Fon: ++49 89 336443
  8594. Fax: ++49 89 335967
  8595.  
  8596. or
  8597.  
  8598. SIGMA DESIGNS, Inc.
  8599. 47900 Bayside Parkway
  8600. Fremont, CA 94538 USA
  8601. Fon: (510) 770-0100
  8602. Fax: (510) 770-2640
  8603. COMPUSERVE: GO DTPVEN
  8604. Sigma BBS: (510) 770-0111 (9600-8-1-N)
  8605.  
  8606. ---------------------------------------------------------------------------
  8607.  
  8608. ~Subject: Cinerama
  8609.  
  8610. From: Yasser.El.Chemaytilly@aedi.insa-lyon.fr (Yasser.El.Chemaytilly)
  8611. Subject: Re: CD-i, and the MPEG format
  8612. Date: 4 Mar 1994 16:00:03 GMT
  8613. Organization: INSA Lyon - Computer Science Dept / France
  8614.  
  8615.  At this time, there are 3 ways of playing a Video-CD-I:
  8616.  
  8617.  - the Phillips CD-i with the Full Motion Video Card (approx $950 in Europe)
  8618.  - the Amiga CD^32 with its Full Motion Video Card (approx $670 in Europe) 
  8619.  - a PC, 486 DX or DX2 with the Reel Magic MPEG card and a Sony 
  8620.           CD-ROM player (for the moment, it only works with the Sony
  8621.           player) (the card costs approx $650 in Europe without 
  8622.                CD-ROM player)
  8623.  
  8624.   The quality of the playback is identical and very good with either the CD-i or
  8625.    the CD^32 (same manufacturer) but is a little bit lossy with the PC card.
  8626.  
  8627.    Anyway, the Reel Magic card is practically as expensive as a full
  8628.    CD^32 system, CD-i (+FMV cartidge) being only a little more expensive. 
  8629.  
  8630.    There may be software for playing Video-CDs on PCs, but I haven't heard 
  8631.    of them yet.
  8632.  
  8633. ---------------------------------------------------------------------------
  8634.  
  8635. ~Subject: XingIt!-card
  8636.  
  8637. [ Well and there's the XingIt!-card now, I try and translate the ]
  8638. [ German description.                                           ]
  8639.  
  8640. Features:
  8641.  
  8642. - realtime MPEG-Video-card for 386/486 and Pentium
  8643. - Framegrabber for Xing-Format I-frame only movies from
  8644.   Video-In in 24-bit/pixel QSIF resolution
  8645. - PAL/SECAM and NTSC
  8646. - Xing-MPEG-to-real-MPEG compression software
  8647. - different playing modes up to 320x240/30frames
  8648. - selectable Refreshrate
  8649. - Windows-Applications, incl. Window for Windows MCI and Media Player
  8650.  
  8651. Price: DM 1499.- (so about $900)
  8652.  
  8653. ---------------------------------------------------------------------------
  8654.  
  8655. ~Subject: MPEG-decompression hardware list
  8656.  
  8657. Company        Product      Support                         Resolution Price
  8658.  
  8659. Ace            Classic      1,5,6,11,23
  8660. Ace            Movie24      1,2,3,4,5,6,12,14,16,20         1280x1204
  8661. AllMedia       2000         1,5,8,9,12,13,16
  8662. AllMedia       III          1,5,6,8,9,(12),13,16
  8663. ArtMedia       MD-341       1,2,3,4,5,14,15,16              640x480
  8664. Aztech         V. Galaxy    1,5,6,16
  8665. Bluepoint      MPX-3        1,2,3,4,5,10,11,16   
  8666. Creative       MP400        1,2,3,11                        1024x768
  8667. Hellfrich      Peggy Plus   1,5,6,12,(Amiga)                           DEM 998
  8668. Edison         MPEG card    1,5,6,10,11,16,20,23            1024x768
  8669. K+s computing  Master       1,2,3,5,11,14,23                           DEM 599
  8670. MovieVision    MPEG 2in1    1,5,8,9,12,13,16,18             800x600
  8671. Optibase       PCMOtionPro  1,5,6,9,12
  8672. Orchid         Kelvin MPEG  1,2,3,5,6,11,13,22              1024x768
  8673. Sigma Designs  RealMagic    1,2,3,4,5,6,11,12,14,16,22      1024x768   DEM 499
  8674. Spea           Showtime +   1,2,3,4,5,6,7,8,10,12,13,14,22  1024x768   DEM 850
  8675. Vitec          DRT1         1,14,21,23
  8676. Vitec          MM2          1,5,11                          1024x768
  8677.  
  8678.  1 = MPEG-1         2 = CD-I            3 = CD-V            4 = Karaoke
  8679.  5 = 16-bit audio   6 = Audio Level 2   7 = Audio Level 3
  8680.  8 = AVI-grabber    9 = VfW 1.1 comp.
  8681. 10 = VESA comp.    11 = RealColor      12 = 24 bit True C. 13 = VGA-card
  8682. 14 = MCI driver    15 = API
  8683. 16 = ISA           17 = EISA           18 = VLB            19 = PCI
  8684. 20 = Feature conn. 21 = TV-decoder     22 = RealMagic com. 23 = S-VHS out
  8685. 24 = CD-Rom
  8686.                          
  8687. The resolution is the highest with MPEG-playback.
  8688.  
  8689. *8  most cards support the freezing of single MPEG-frames and capturing
  8690.     of incoming frames, but only a few support real grabbing
  8691. *11 most cards only support 64k color when playing MPEG
  8692. *23 this can be a Composite Video Out or similar
  8693.  
  8694.  
  8695. I know there are many, many more, please send my info about YOUR mpeg
  8696. solution. Should we put the companies addresses here as well ?
  8697.  
  8698. ---------------------------------------------------------------------------
  8699.  
  8700. ~Subject: Amiga CD32
  8701.  
  8702. [ Ha, a game-console with MPEG-support, a bit crazy, but the best things ]
  8703. [ get pushed by nig-nag <grin>                                           ]
  8704.  
  8705. From: George Sanderson <G.Sanderson@ais.gu.edu.au>
  8706. Date: Thu, 3 Feb 94 12:28:31 +1000
  8707.  
  8708. You may want to add to your MPEG FAQ that the Amiga CD32 game console is
  8709. able to play both standard MPEG VideoCDs and the CD-I specific VideoCDs,
  8710. with the addition of the MPEG card which is available now.
  8711.  
  8712. As far as I know, the recommended retail price just for the CD32 in the USA
  8713. is US$399 but it is selling below that now (US$376).  In Australia, it is
  8714. selling for AUS$594.  It has been released in Europe in late 1993 and
  8715. is selling very well (120,000+ units sold as of Jan'94).  The major release
  8716. date for the US market is sometime in March.  There are at least
  8717. 20 CD32 specific titles available (and it can play CDTV titles as well)
  8718. and over 100 CD32 titles will be released in 1994.  The price of the MPEG
  8719. module is (guessing) US$299.  Commodore is selling the units directly
  8720. to wholesalers.
  8721.  
  8722. here is some info about the Amiga CD32 (made by Commodore) with
  8723. info about its MPEG module mixed in (i'll mail you more info about
  8724. the MPEG module when I get it):
  8725.  
  8726.                      AmigaCD32         
  8727.  
  8728.        CPU/Speed: 68EC020 @ 14MHz
  8729.     Architecture: 32 bit
  8730.       Throughput: 3.5 MIPS      
  8731.         Chip RAM: 2 Megs of DRAM
  8732.         Fast RAM: None
  8733. Non-Volatile RAM: 1 KB
  8734.  
  8735.     Custom Chips: I/O ports, Audio and Interrupt controller,
  8736.                   DMA Controller, Video data controller (AGA chipset)
  8737.                   CD-ROM controller
  8738.  
  8739.   Animation CELS: 8 Sprites per scanline (64-bit)
  8740.                   & Unlimited Bobs (blitter objects)
  8741.  
  8742.      Video Modes: can display upto 1280 x 512 in 15 kHz
  8743.          Colours: 256,000/16.7 Million   
  8744.  
  8745.            Sound: Stereo 8 bit         
  8746.                   Stereo 18 bit CD-DA  
  8747.                   DSP planned          
  8748.  
  8749.           CD-ROM: Double Speed         
  8750.                   Top Loading          
  8751. Software Video
  8752.           Player: Partial Screen using 4096 Colours (CDXL)
  8753.  
  8754.             MPEG: Available now (see below)
  8755.          PhotoCD: Available as third party software
  8756.  
  8757.  Game Controller: 11 Buttons           
  8758.  
  8759. Supported CD Standards:
  8760.  
  8761. AMIGA CD32
  8762. Audio CD
  8763. CD+G (Graphics)
  8764. Most CDTV including CDXL
  8765. VideoCD (MPEG1) - see below
  8766.  
  8767. Connectors + Switches:
  8768.  
  8769. 2 x Games Controller/Joystick/Mouse ports
  8770. High Speed auxiliary connector for keyboard and virtual reality gloves, etc.
  8771. Local slot expansion connector
  8772. Power Switch and Indicator LED
  8773. Reset Switch (momentary)
  8774. Headphone jack and Volume slider
  8775.  
  8776.  
  8777. MPEG Module (optional)
  8778.  
  8779. Full screen, Full Motion Video and Stereo Audio replay direct from disc;
  8780. total running time 74 minutes
  8781. 352 x 288 at 25 Frames per Second (PAL mode - different for NTSC)
  8782. Able to play most CD-I MPEG specific titles (they demonstrated that
  8783. at the World of Commodore shows playing Star Trek 6, Top Gun, etc.)
  8784.  
  8785. The Amiga CD32 hardware is able to genlock its graphics and sound on top of
  8786. the MPEG output.  Additionally, while the MPEG module is playing, the CD32
  8787. has about 80% of CPU left to use - this could mean some interesting games
  8788. with video backdrops.
  8789.  
  8790. The MPEG module comes with a MPEG disk that has a few rock video clips.
  8791.  
  8792. Audio Output:
  8793.  
  8794. 2 channel, 4 voice stereo using 8 bit digital/analogue converters
  8795. 18 bit audio CD stereo at 44kHz
  8796.  
  8797. Video Outputs:
  8798.  
  8799. S-Video, Composite and RF (UHF) for TV
  8800.  
  8801. Included:
  8802.  
  8803. 11 Button Game Controller
  8804. "Welcome" Disc
  8805. Consumer Information Manual
  8806. CD32 Users Guide
  8807. RF video and Stereo audio cables
  8808. + usually packed with 2 games
  8809.  
  8810. Physical:
  8811.  
  8812. 212 mm x 311 mm x 81 mm
  8813. CPU 1.44 kg
  8814. Power Supply 1.53 kg
  8815.  
  8816. Warranty:
  8817.  
  8818. 1 Year, return to regional service centre
  8819.  
  8820. Power Supply:
  8821.  
  8822. External, 22 Watts
  8823.  
  8824. ===========================================================================
  8825.  
  8826. ~Subject: SECTION 5. - MAILBOX-ACCESS
  8827.  
  8828. That's how you can get MPEG-related files via modem.
  8829.  
  8830. ---------------------------------------------------------------------------
  8831.  
  8832. ~Subject: Genoabox
  8833.  
  8834. GENOA has right now a new BBS in Germany (Stefan Hartmann will put new
  8835. MPEG-software there too), phone:
  8836.  
  8837.   ++ 49 211 686756    (16.8Kb/sec with US Robotics Dual Standard)
  8838.  
  8839. ---------------------------------------------------------------------------
  8840.  
  8841. ~Subject: Xing Technologies BBS and fax
  8842.  
  8843. This is the phone number of Xing Technologies' BBS:
  8844.  
  8845.   805-473-2680 (2400b) (USA)
  8846.   805) 473-0147 (Fax)
  8847.  
  8848. Bryan Woodworth <bryanw@rahul.net> wrote:
  8849.  
  8850. Would you also please add, that the Xing BBS now supports v.32bis and HST !
  8851. I am not sure on HST, but I am sure it supports v.32bis.  However, I have a
  8852. v.32bis modem, and could only connect at 9600. I think they do not have the
  8853. modem configured properly.
  8854.  
  8855. ===========================================================================
  8856.  
  8857. ~Subject: SECTION 6. - FTP-ACCESS
  8858.  
  8859. ---------------------------------------------------------------------------
  8860.  
  8861. ~Subject: FTP-ACCESS - Overview
  8862.  
  8863. Please contact these ftp-sites for files before e-mailing to me !!!
  8864.  
  8865. URL=ftp://ftp.tnt.uni-hannover.de/pub/MPEG/audio
  8866.     [161.105.2.22]
  8867.  
  8868. URL=ftp://busop.cit.wayne.edu/sys/pub/simpsons/incoming/mpeg
  8869. URL=ftp://busop.cit.wayne.edu/sys/pub/simpsons/incoming/mpeg1
  8870.  
  8871. URL=ftp://amiga.physik.unizh.ch/pub/aminet/
  8872.     [130.60.80.80]
  8873.  
  8874. URL=ftp://ftp.cica.indiana.edu/
  8875.     [129.79.20.17]
  8876.  
  8877. URL=ftp://ftp.cs.tu-berlin.de/pub/msdos/incoming/
  8878. URL=ftp://ftp.cs.tu-berlin.de/pub/msdos/dos/graphics/
  8879. URL=ftp://ftp.cs.tu-berlin.de/pub/msdos/windows3/graphics
  8880. URL=ftp://ftp.cs.tu-berlin.de/pub/aminet/
  8881.     [quepasa.cs.tu-berlin.de]
  8882.     [130.149.17.7]
  8883.  
  8884. URL=ftp://ftp.germany.eu.net/
  8885.     [192.76.144.75]
  8886.  
  8887. URL=ftp://ftp.luth.se/pub/graphics/animation/mpeg
  8888.  
  8889. URL=ftp://ftp.uni-erlangen.de/pub/aminet/
  8890.     [131.188.1.43]
  8891.  
  8892. URL=ftp://ftp.uni-kl.de/pub/aminet/
  8893.     [131.246.9.95]
  8894.  
  8895. URL=ftp://ftp.wustl.edu/
  8896.     [128.252.135.4]
  8897.  
  8898. URL=ftp://isfs.kuis.kyoto-u.ac.jp/
  8899.  
  8900. URL=ftp://litamiga.epfl.ch/pub/aminet/
  8901.     [128.178.151.32]
  8902.  
  8903. URL=ftp://merlin.etsu.edu/
  8904.     [192.43.199.20]
  8905.  
  8906. URL=ftp://mm-ftp.cs.berkeley.edu/pub/multimedia/mpeg/
  8907.     [128.32.149.157]
  8908.  
  8909. URL=ftp://nic.funet.fi/
  8910.     [128.214.6.100]
  8911.  
  8912. URL=ftp://phoenix.oulu.fi/
  8913.     [130.231.240.17]
  8914.  
  8915. URL=ftp://pinus.slu.se/pub/graphics/mpeg/
  8916.     [130.238.98.11]
  8917.  
  8918. URL=ftp://sumex-aim.stanford.edu/info-mac/app/
  8919.  
  8920. URL=ftp://suniams1.statistik.tu-muenchen.de/pub/mac/MPEG/encoder/
  8921.     [131.159.64.1]
  8922.  
  8923. URL=ftp://ftp.iuma.com/
  8924.  
  8925. URL=ftp://sunsite.unc.edu/pub/electronic-publications/IUMA
  8926.  
  8927. URL=ftp://wuarchive.wustl.edu/
  8928.     [128.252.135.4]
  8929.  
  8930. URL=ftp://ftp.tnt.uni-hannover.de/pub/MPEG/audio
  8931.  
  8932. ---------------------------------------------------------------------------
  8933.  
  8934. ~Subject: MPEG-2 validation bitstreams
  8935.  
  8936. The MPEG Committee MPEG-2 Systems Transport Layer validation bitstreams
  8937. (July 1994 edition) are now available via anonymous FTP. Also included
  8938. in the archive is a copy of Munsi Haque's draft ANSI-C source code for
  8939. Transport layer demultiplexing.
  8940.  
  8941. These bitstreams are not guaranteed to be 100% correct (especially
  8942. since the MPEG-2 Systems document, ISO/IEC 13818-1, is still undergoing
  8943. technical content changes), but they are produced by none other than
  8944. the world's experts on the subject.
  8945.  
  8946.  
  8947. URL=ftp://wuarchive.wustl.edu/graphics/x3l3/pub/bitstreams/systems/
  8948.     [128.252.135.4]
  8949.  
  8950.  
  8951.  total 3.22 Megabytes
  8952.  
  8953.  1171551 teracom-3.tar.gz  Teracom bitstream
  8954.    27833 COMMENTS          Comments regarding bitstreams
  8955.    26731 munsi_v13.tar.gz  MPEG-2 Demultiplexer source code
  8956.   355823 divicom-3.tar.gz  Divicom bitstream
  8957.   879635 nta-1.tar.gz      NTA bitstream
  8958.   777316 sa-2.tar.gz       Scientific Atlanta bitstream
  8959.  
  8960.  
  8961. MPEG-2 Video validation bitstreams are also available in
  8962. graphics/x3l3/pub/bitstreams/video/
  8963.  
  8964. Kind regards,
  8965.  
  8966. Chad Fogg
  8967. cfogg@netcom.com
  8968.  
  8969. ---------------------------------------------------------------------------
  8970.  
  8971. ~Subject: Audio streams and utils
  8972.  
  8973. CCETT has been distributing executables only of their Audio bitstream
  8974. syntax verifier.  The site address is: 161.105.2.22
  8975. Audio conformance bitstreams are also at
  8976.  
  8977. URL=ftp://ftp.tnt.uni-hannover.de/
  8978.  
  8979. ---------------------------------------------------------------------------
  8980.  
  8981. ~Subject: Accessing Aminet
  8982.  
  8983. There are many other ways than FTP to access AmiNet:
  8984.  
  8985. - ADT. This is a front end for FTP that allows easy access to AmiNet.
  8986.   Get it from comm/misc/ and compile it on your UNIX box.
  8987. - FSP. AmiNet Files can be downloaded from the FSP site disun3.epfl.ch
  8988.   port 9999. Uploads are accepted and forwarded.
  8989. - NFS. The only AmiNet site that allows NFS mounting of the archives is
  8990.   wuarchive.wust.edu. FTP there and read the details in the /README.NFS
  8991. - IRC. On Internet Relay Chat, you can talk to various server robots
  8992.   like AmiBot, MerBot or Mama, to do queries and retrievals.
  8993. - Gopher. There is a gopher server for AmiNet at merlin.etsu.edu. To
  8994.   connect, use the command 'gopher merlin.etsu.edu'.
  8995. - Modem. In Germany, you can download the AmiNet files from the Incubus
  8996.   BBS, telephone number 0931 781464. The login is 'ftp', password 'ftp'.
  8997. - Usenet. A list of recent uploads is posted every week to the newsgroups
  8998.   comp.sys.amiga.misc and de.comp.sys.amiga.misc. Useful for mail servers.
  8999. - Mailserver. Sorry, no specialized e-mail server for AmiNet yet. But you
  9000.   can use ftpmail@decwrl.dec.com. Send a mail with HELP in the body.
  9001. - CD-ROM. AmiNet is available on CD-ROM. Talk to info@cdrom.com, or write
  9002.   to Walnut Creek CDROM, 1547 Palos Verdes Mall, Walnut Creek CA 94596, USA
  9003.   or phone 1 800 786 9907, +1 510 674 0783 or +1 510 674 0821 (FAX)
  9004.  
  9005. ---------------------------------------------------------------------------
  9006.  
  9007. ~Subject: Where will I find test-material for MPEG-encoders ?
  9008.  
  9009. [ You can find this in the
  9010.  
  9011. URL=ftp://mm-ftp.cs.berkeley.edu/pub/multimedia/mpeg/
  9012.  
  9013. [ ftp-server. Belongs to there codec.                                   ]
  9014.  
  9015. This directory includes 150 raw YUV frames suitable for use with the MPEG
  9016. encoder.
  9017.  
  9018. The YUV frames are the files flower.*.tar.z.  To uncompress, use the GNU
  9019. 'gunzip' program.  You should uncompress all of these files inside a
  9020. directory named 'flowg'.
  9021.  
  9022. To run the test, simply do 'mpeg_encode flower.param'
  9023.  
  9024. To make sure the test worked, do 'diff flowgard.mpg result.mpg'
  9025.   (there shouldn't be any difference; if there is, let us know)
  9026.  
  9027. Please see the file 'times,' which includes time results for various machines
  9028. and compilers.
  9029.  
  9030.  
  9031. ===========================================================================
  9032.  
  9033. ~Subject: SECTION 7. - WWW-ACCESS
  9034.  
  9035. Well, MPEG is a multimedia format and fits perfectly the needs of
  9036. the World Wide Web, so there are WWW-site that store their material
  9037. in MPEG format and, the other way round, sites that store information
  9038. about MPEG itself.
  9039.  
  9040. ---------------------------------------------------------------------------
  9041.  
  9042. ~Subject: Where is the WWW-home of this FAQ ?
  9043.  
  9044. Oh, don't get confused here. This new version 4.0 of this FAQ is
  9045. available in HTML form from:
  9046.  
  9047.     URL=http://www.cs.tu-berlin.de/~phade/mpegfaq/
  9048.  
  9049. The HTML-Version of the FAQ supports pictures and e-mail
  9050. addresses and file location via HTTP-links.
  9051.  
  9052. At the following URL you find all the news about MPEG I wrote,
  9053. all source-code I produced and all utilities I compiled:
  9054.  
  9055.     URL=http://www.cs.tu-berlin.de/~phade/mpeg.html
  9056.  
  9057.  
  9058. Addional there is a HTML-document floating about, that is like
  9059. a FAQ as well.
  9060.  
  9061.     URL=http://porto.crs4.it:80/~luigi/MPEG/mpegfaq.html
  9062.  
  9063. ---------------------------------------------------------------------------
  9064.  
  9065. ~Subject: An Interactive Explanation on the Web ?
  9066. From: Kevin Lussie <lussi923@cs.uidaho.edu>
  9067.  
  9068. I had to write an interactive HTML paper on MPEG for my Digital Image 
  9069. Processing class that I am currently taking here at the University 
  9070. of Idaho and Washington State University. 
  9071.  
  9072. I just wanted to say that your MPEG FAQ was a great resource. 
  9073.  
  9074. I was just wondering if you could check out my INTERACTIVE MPEG PAPER, 
  9075. if you have time. It is located at 
  9076.  
  9077. http://www.cs.uidaho.edu/~lussi923/mpeg-project/index.html
  9078.  
  9079. ---------------------------------------------------------------------------
  9080.  
  9081. ~Subject: Where is the WWW-demo of "The Internet MPEG CD-Rom" ?
  9082.  
  9083.                    Try and USE the Internet OFFLINE !!!
  9084.  
  9085. To make the "Internet MPEG CD-Rom" interactive, one big hypertext-
  9086. document explains and displays the whole contents of the archive,
  9087. giving the user a powerful tool, called Cello, to browse through
  9088. Megabytes of documentaton and to interactevly select and play hours
  9089. and hours of music and movies.
  9090.  
  9091. The whole archive itself is organized as one big hypertext-document.
  9092. It includes a complete Wide-World-Web (WWW) document, the tools to
  9093. use this document on Windows-, Windows-NT-, Linux-, SunOS- and Solaris-
  9094. machines are included, most UNIX-hosts can include "The Internet MPEG CD-Rom"
  9095. into their hyptertext-services with a single link !!!
  9096.  
  9097. You can find a few of all these WWW-documents as an example under the address:
  9098.  
  9099.     URL=http://www.b-2.de.contrib.net/harti/mpegcd.htm
  9100.  
  9101.     
  9102. For a complete description of this famous MPEG archive, real below,
  9103. in the MAIL-ACCESS section.
  9104.  
  9105. ---------------------------------------------------------------------------
  9106.  
  9107. ~Subject: Which archive is mostly related to MPEG-Audio ?
  9108.  
  9109. <IMG SRC="iuma2.gif">
  9110.  
  9111. The Internet Underground Music Archive is the biggest archive
  9112. storing music in MPEG-Audio format. The already have more than
  9113. 500 bands presenting their music and on of the nicest Web-sites
  9114. ever seen ! Just connect to
  9115.  
  9116.     URL=http://www.iuma.com/
  9117.  
  9118.   .___ ____ ___ _____    _____   
  9119.   |   |    |   \     \  /  _  \       the net's first hi-fi music archive
  9120.   |   |    |   /  Y   \/  /_\  \     .:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.
  9121.   |   |    |  /   |    \   |    \    The Internet Underground Music Archive 
  9122.   |___|______/____|__  /___|__  /      bands/music/labels/images/bubbles
  9123.   ===================\/=======\/============================================
  9124.                          How to Use IUMA
  9125. Last edited 2/2/94
  9126.  
  9127. Here are a few pointers about how to make the most efficient use of
  9128. IUMA and the music on it. You may also wish to peruse the
  9129. Frequent Asked Questions (FAQ), although it's currently undergoing a 
  9130. complete revision. 8)
  9131.  
  9132. The first and most important thing to note is that IUMA is best explored 
  9133. and used via World-Wide Web (WWW) clients such as Lynx and NCSA Mosaic. 
  9134. The WWW is a hypertext-based method of purusing the net that is 
  9135. both more intuitive than FTP and Gopher, yet downwards compatible with FTP
  9136. and Gopher.
  9137.  
  9138. NCSA Mosaic requires a direct network connection or SLIP to the Internet 
  9139. and versions are available for Xwindows boxes, Macintoshs and Windows PCs.
  9140. FTP to "ftp.ncsa.uiuc.edu" and look in the dir "/Mosiac" for all current 
  9141. versions.
  9142.  
  9143. Lynx is a very good text-mode WWW browser available as UNIX program that 
  9144. one runs from their UNIX account. As long as "tar" and "uncompress" are 
  9145. not foreign to you, you should have no problems making it work.
  9146. You can FTP lynx from ftp.wustl.edu in the /packages/www dir.
  9147.  
  9148. The next most important thing to first realize is that all of the music on 
  9149. IUMA comes a few forms:
  9150.  
  9151. MPEG
  9152.   This is the format of the best stereo copies of the music online. You need
  9153.   a special player to decode the MPEG compression and play the music on your
  9154.   system once it's downloaded. IUMA has a few freely distributable
  9155.   MPEG audio players already available for you to download:
  9156.  
  9157.     XingSound Player for Windows as mpgaudio.zip
  9158.     Tobias Bading's MPEG audio player source as maplay.tar.Z
  9159.        People using this on UNIX workstations (particularly Suns), 
  9160.        should take a look at the accompanying textfiles.
  9161.  
  9162.     Aware Corporation has graciously produced a shareware MPEG audio player 
  9163.     for the Macintosh which will be availble for distribution in the 
  9164.     next few weeks.
  9165.  
  9166. ADPCM
  9167.   The ADPCM format is probably going to be phased out of being included
  9168.   in IUMA since the quality is not as good as MPEG II. In any case,
  9169.   the files have the extension .WAV and are in the MS-ADPCM format.
  9170.   The program Cool Edit (cool131.zip) can decode and play them on 
  9171.   Windows PCs.
  9172.  
  9173. AU
  9174.   Some (eventually all) bands will have a Sun Audio (au) sample file which
  9175.   is available to download a small 15 second sample of the band before  
  9176.   deciding that you wish to download the entire MPEG song. When listening 
  9177.   to these note that the Sun Au files are 8bit mono for that full-on 
  9178.   compressed midrange AM Radio sound and therefore will sound nothing 
  9179.   remotely like the awesome stereo MPEG file. Most machines can 
  9180.   understand this format so nothing special should be needed beyond normal 
  9181.   audio tools to download and play these files. Player for Macintoshes 
  9182.   and Windows PCs can be found on the Internet.
  9183.  
  9184. If you have any questions please mail ianc@sunsite.unc.edu.
  9185.  
  9186. ---------------------------------------------------------------------------
  9187.  
  9188. ~Subject: What's with Bryan Woodworth ftp-area ?
  9189.  
  9190. He changed his internet provider and close his old ftp-site.
  9191. The new site is reachable via WWW (the better way) and still
  9192. presents lots of information about MPEG and graphics at all:
  9193.  
  9194. From: bryanw@best.com (Bryan Woodworth)
  9195. Subject: WWW Graphics Page now UP
  9196.  
  9197. [Lastmod: 09.01.94 11:37:55] 
  9198. !!=new info
  9199.  
  9200. The WWW Graphics Page is now online via the World Wide Web!
  9201. URL=http://www.best.com/~bryanw/
  9202.              
  9203. [Even if you don't have a graphical front-end, you can still access 
  9204. the information.  Plain ASCII output (via the program LYNX) is 
  9205. available for those users using dial-up accounts (e.g. Netcom, a2i, 
  9206. Portal, CRL, and many more).  You may already have lynx installed 
  9207. online!  Enter "lynx" at the shell prompt.  If it doesn't exist, 
  9208. just ftp the source and compile it yourself.  See .signature at bottom of
  9209. message for details on obtaining the FAQ via ftp.best.com.]
  9210.  
  9211. If you're using a Unix dialup account and Microsoft Windows, now
  9212. you can experience the glory of the World Wide Web's great
  9213. interface without having to pay for a SLIP account or SLIP emulator!
  9214. Try SlipKnot today..
  9215.  
  9216. URL=ftp://oak.oakland.edu/pub/win3/internet/
  9217.  
  9218. More info available from the WWW Graphics page!
  9219.  
  9220. !! This info-file is becoming too time-consuming to update. Therefore,
  9221. !! you are encouraged to check out the homepage once a week or so, and click
  9222. !! on the "Latest Additions" link for a listing of the latest updates!
  9223.  
  9224. Information of the following variety awaits you:
  9225.  
  9226.   o The FAQ desk -- Graphics information
  9227.          
  9228.                     * Tom Lane's JPEG faq -- Obtaining viewers and
  9229.                       understanding the JPEG image format
  9230.                     * A link to the NCSA Mosaic FTP site, for those
  9231.  
  9232. Archive-name: mpeg-faq/part8
  9233. Last-modified: 1995/06/07
  9234. Version: v 4.0 95/06/07
  9235. Posting-Frequency: bimonthly
  9236.  
  9237. looking for Mosaic, the famous WWW graphical
  9238.                       browser
  9239.                     * Jim Howard's alt.binaries.pictures FAQ -- Info
  9240.                       on how to decode pictures, posting, and much
  9241.                       more
  9242.                     * MPEG information:  Links to Frank Gadegast's
  9243.                       MPEG faq and MPEG homepage; The WWW Graphics 
  9244.                       Page's very own MPEG faq; The MPEG Standards
  9245.                       Homepage (info on MPEG standards, site for
  9246.                       MPEG movies, and more); and an MPEG movie 
  9247.                       archive
  9248.                     * A link to the massive Usenet FAQ pages at
  9249.                       Ohio State, an outstanding resource
  9250.                     * A link to Thomas Boutell's fantastic WWW faq!
  9251.                       In living WWW format!  (Also availble via FTP
  9252.                       from the WWW Graphics Page as a ZIPped Ascii file) 
  9253.                       Info on WWW browsers for all platforms (even Unix
  9254.                       dial-up), writing HTML documents, and more!
  9255.                       A  M U S T  R E A D  F O R  E V E R Y O N E 
  9256.                       
  9257.                  -- Internet Service FAQ pages
  9258.  
  9259.                     * The Internet Services FAQ
  9260.                     * FSP (alternative to FTP) FAQ
  9261.                     * Internet Gopher FAQ
  9262.  
  9263.                  -- Miscellaneous FAQs (selection subject to change)
  9264.  
  9265.                     * Howard Stern
  9266.                     * Unix X-Windows on Intel Architecture
  9267.                     * The MS-DOS Archives
  9268.                     * Playboy Enterprises (required reading!)
  9269.                     * The alt.supermodels FAQ!  Read on for juicy
  9270.                       info on your favourite supermodels.. 
  9271.                                                              
  9272.  
  9273.   o Computer Support Areas -- Where to obtain programs of a graphical
  9274.                               nature for your architecture
  9275.                   
  9276.                     * Macintosh -- MPEG players, contact sheet 
  9277.                       makers, dl/gl/fli viewers, etc.
  9278.                     * IBM PC -- MPEG players, JPEG viewers,
  9279.                       a link to the Xing Technology FTP site,
  9280.                       and official QPEG support site for
  9281.                       North America (including the latest version
  9282.                       of QPEG, along with a link to Oliver Fromme's
  9283.                       homepage in Germany)                      
  9284.                       NOW DIVIDED INTO COGENT areas:  JPEG/GIF viewers,
  9285.                       MPEG viewers, contact sheet makers, AVI viewers,
  9286.                       and probably a few other juicy tidbits.
  9287.                     * Unix/X-Window -- MPEG source, movies; 
  9288.                       information on XAnim, a wonderful graphics
  9289.                       program by Mark Podlipec
  9290.              * The QuickTime Support Link.  A pointer to
  9291.                    Robert A. Lentz's exquisite QuickTime information
  9292.                page, with info on flattening quicktimes and programs
  9293.                and utils for Macintosh, X Window, and Microsoft
  9294.                Windows.  A MUST see!!
  9295.                     * Archie link added!  Just click and voila, you
  9296.                      have access to Archie.  (Some browsers may
  9297.                 require an external telnet application;
  9298.                 consult your documentation.)
  9299.                     * Winsock support area.  Link to the Winsock
  9300.                       Application FAQ.  In addition, the WWW Graphics
  9301.                       Page is now the official distribution site
  9302.                       in the USA for EWAN, the fantastic freeware telnet
  9303.                       program for Winsock!
  9304.  
  9305.   o The Tennis Center -- Information on my favorite game, tennis.
  9306.                          (I realize this is tangential, but.. so 
  9307.                          what!)   
  9308.  
  9309.                     * The rec.sport.tennis FAQ
  9310.                     * The Tennis Homepage (In Canada, with
  9311.                       links to another tennis homepage)
  9312.                  !! * A cute picture of Barbi Benton and Hugh
  9313.                       Hefner posting with their tennis racquets
  9314.                       at a tennis court
  9315.                  !! * Fascinating photos of Andre Agassi's new haircut
  9316.  
  9317.   o Favorite Links -- Other sites you should try, and IMMEDIATELY!
  9318.  
  9319.                     * The Yahoo Sever - a great link, equipped
  9320.               with an easy-to-use subject search index
  9321.                for easy access to other links!  Find what
  9322.               you want quickly and easily.
  9323.                     * The Multimedia Maddman's hOmeY page -- Graphics
  9324.               Info and more!  Just try it! 
  9325.                     * Michel Buffa's Video Games Page (3DO, Atari
  9326.                       Jaguar, SNES, Sega, Gameboy, etc..)
  9327.                     * The UnOfficial Nine Inch Nails Homepage
  9328.                     * The Beastie Boys Homepage
  9329.                     * The Llama Mailserver (MPEG resource and more!)
  9330.                     * The alt.sex.movies Homepage
  9331.                     * The CDnow!  homepage -- ordering CDs via WWW
  9332.                    * The Playboy Enterprises, Inc. homepage -- now
  9333.                       you can explore Playboy's catalog via WWW! 
  9334.  
  9335.                     * A section on graphics links.. including the
  9336.                        very nice IAMfree area, your local WWW Art
  9337.                       Gallery!  
  9338.  
  9339. The material is presented in a refreshing format, just for YOU!  If 
  9340. you do not want this site to die, your feedback must be submitted via
  9341. email.  Do not let it go to waste!  The vitality of this site is up to
  9342. you alone..
  9343.  
  9344. The WWW Graphics Page.. your online WWW resource for Graphics 
  9345. Utilities!
  9346.  
  9347. Try it today!  URL=http://www.best.com/~bryanw/
  9348.  
  9349. -- 
  9350.     Bryan Woodworth (bryanw@best.com)  Try The WWW Graphics Page today!
  9351.                      URL: http://www.best.com/~bryanw
  9352.       Need a WWW browser?  FTP to ftp.best.com:/pub/bryanw/wwwfaq.zip
  9353.         Info on WWW browsers for all platforms -- even Unix dial-up
  9354.  
  9355. ---------------------------------------------------------------------------
  9356.  
  9357. ~Subject: Rock'n'Roll stored in MPEG on the Web ?
  9358.  
  9359. IUMA (The Internet Underground Music Archive) and Rolling Stone
  9360. contributing editor/Wired contributing writer Michael Goldberg are
  9361. proud to announce a new rock & roll magazine exclusively available
  9362. on the Internet via WWW.
  9363.  
  9364. Please join us at http://www.addict.com/ATN/
  9365.  
  9366. We'd love it if you would add this new site to any appropriate
  9367. "What's New" listings.
  9368.  
  9369. Any questions or feedback may be addressed to atn@addict.com.
  9370.  
  9371. PS: Look for press about ATN's launch in the following (traditional print)
  9372.     papers:
  9373.     San Francisco Chronicle: Fri, Dec 2nd
  9374.     San Francisco Examiner: Fri, Dec 2nd
  9375.     LA Times (Calendar Section): Sun, Dec 4th
  9376.  
  9377.     ...and possibly a mention in the Washington Post...
  9378.  
  9379. -- 
  9380. Jon Luini (falcon@iuma.com) & Michael Goldberg (insider@addict.com).
  9381.  
  9382. ---------------------------------------------------------------------------
  9383.  
  9384. ~Subject: Where can I find space movies coded in MPEG ?
  9385.  
  9386. From: rousself@univ-rennes1.fr ( Frank ROUSSEL )
  9387. Date: 21 Mar 1994 21:39:52 GMT
  9388. Organization: CRI/CICB Universite' de Rennes 1 - FR
  9389.  
  9390. I'm proud to announce you that a Space Movie Archive
  9391. has been opened at the CRI-CICB of Rennes.
  9392. It consists of about 90 anims, the biggest archive i know.
  9393.  
  9394. English URL=http://www.univ-rennes1.fr/ASTRO/anim-e.html
  9395. French  URL=http://www.univ-rennes1.fr/ASTRO/anim-f.html
  9396.  
  9397. Some new clickable cards (mainly on planets & shuttles)
  9398. have been added to the astronomy page (images, animations)
  9399. English URL=http://www.univ-rennes1.fr/ASTRO/astro.english.html
  9400. French  URL=http://www.univ-rennes1.fr/ASTRO/astro.french.html
  9401.  
  9402. NOTE: You can also accede via ftp.univ-rennes1.fr:/pub/Images/ASTRO,
  9403.                        or via gopher.univ-rennes1.fr:/Astro Gopher
  9404.  
  9405. The IP address is 129.20.254.1 for all.
  9406.  
  9407. ---------------------------------------------------------------------------
  9408.  
  9409. ~Subject: Movies on Web-site
  9410.  
  9411. From: paula@sgizenger5.informatik.tu-muenchen.de (Andreas Paul)
  9412. Subject: 'Blade Runner' and 'The Wall'-MPEG-animations on WWW
  9413. Date: 28 Jul 1994 20:58:35 GMT
  9414.  
  9415. I have put a few MPEG-Movies onto our WWW-Site.
  9416.  
  9417. There are clips from 'Pink Floyd: The Wall' and (of course ;) 'Blade Runner'.
  9418.  
  9419. Soon to follow: 'Highlander', 'Dr. Strangelove' ...
  9420.  
  9421. (one of those files would have created a 79-parted posting (1000 lines each),
  9422.  so forgive for not posting the actual file ;)
  9423.  
  9424. In case you are interested here's the URL:
  9425.  
  9426. URL=http://wwwzenger.informatik.tu-muenchen.de/persons/paula/mpeg/index.html
  9427.  
  9428.  
  9429.     Enjoy, Andreas Paul
  9430.  
  9431. ---------------------------------------------------------------------------
  9432.  
  9433. ~Subject: Where can I find fractal movies coded in MPEG ?
  9434.  
  9435. From: rousself@univ-rennes1.fr ( Frank ROUSSEL )
  9436. Date: 21 Mar 1994 21:39:27 GMT
  9437. Organization: CRI/CICB Universite' de Rennes 1 - FR
  9438.  
  9439. I'm proud to announce you that a Fractal Movie Archive
  9440. has been opened at the CNAM of Paris.
  9441. URL=http://www.cnam.fr/fractals/anim.html
  9442.  
  9443. You may also have a look at the Fractal Art Gallery too.
  9444. URL=http://www.cnam.fr/fractals.html
  9445.  
  9446. NOTE: You can also accede via
  9447.  
  9448. URL=ftp://ftp.cnam.fr/pub/Fractals/
  9449.  
  9450. ---------------------------------------------------------------------------
  9451.  
  9452. ~Subject: Is qt2mpeg on the Web ?
  9453.  
  9454. I put the information concerning the conversion of QuickTime to
  9455. MPEG on the WWW. The code and a short explanation can be found
  9456. at http://www.cs.vu.nl/~cvrij/ my homepage </a>
  9457. under the 'current project' listing. (The Conversion Project)
  9458. This should work for most people, if you have any problems with it, let
  9459. me know.
  9460. I didn't incorporate the AVI to MPEG conversion yet, although it's
  9461. fairly trivial, since it's basically the same as QuickTime to MPEG.
  9462. (I haven't been able to test anything yet, that's why)
  9463.  
  9464. (oh, it's kind'a big to post, and since there's probably something
  9465. I overlooked, I'll keep it on the Web for now.)
  9466.  
  9467. Casey Ryder
  9468. -- 
  9469. Cees van Rij/ Casey Ryder       ++312503-16844 CET
  9470. http://www.cs.vu.nl/users/students/cvrij/home.html
  9471.  
  9472. ---------------------------------------------------------------------------
  9473.  
  9474. ~Subject: What are other good URL's ?
  9475.  
  9476. Documents:
  9477.   URL=http://www.cs.tu-berlin.de/mpegfaq/
  9478.       (MPEG-FAQ online version)
  9479.   URL=http://www.crs4.it/~luigi/MPEG/
  9480.       (HTML-formatted MPEG-Infos)
  9481.   URL=http://atsc.org/
  9482.       (HDTV/MPEG2 documents)
  9483.  
  9484. Utilities:
  9485.   URL=http://www.cs.tu-berlin.de/~phade
  9486.       (PHADE's home-page and MPEG archive)
  9487.   URL=http://www.b-2.de.contrib.net/mpegarts/
  9488.       (MPEG-Arts, various MPEG-utils)
  9489.   URL=http://www.ziff.com:8009/~cshopper/features/9504/hw2_0495/
  9490.       (MPEG Mania - good description of available hardware MPEG cards)
  9491.   URL=http://xingtech.com/
  9492.       (Xing Technology)
  9493.   URL=http://www.cogs.susx.ac.uk/users/christ/help/xmg.html
  9494.  
  9495. Movies:
  9496.   URL=http://w3.eeb.ele.tue.nl/mpeg/index.html
  9497.       (MPEG Movie Archive)
  9498.   URL=http://www.kyushu-id.ac.jp/kid/free/RYOUTEI/MPEG/tsuzuki02.html
  9499.       (Video & 8mm FILM)
  9500.  
  9501. Music:
  9502.   URL=http://www.iuma.com/
  9503.       (IUMA - Internet Underground Music Archive)
  9504.   URL=http://http://kspace.com
  9505.       (Music clips)
  9506.   URL=http://www.io.org/~cme
  9507.       (MPEG utils and some cool bands)
  9508.   URL=http://pcd.stanford.edu/umbra/Towhead/Towhead.html
  9509.       (Towhead)
  9510.   URL=http://server.music.vt.edu
  9511.       (Virginia Tech Music Department)
  9512.   URL=http://www.csos.orst.edu/rfr/va/arcana.html
  9513.       (Violet Arcana)
  9514.  
  9515. ===========================================================================
  9516.  
  9517. ~Subject: SECTION 8. - MAIL ORDER
  9518.  
  9519. That's about what you can get via mail.
  9520.  
  9521. ---------------------------------------------------------------------------
  9522.  
  9523. ~Subject: The Internet MPEG CD-Rom
  9524.  
  9525.         PHADE SOFTWARE        and   Hartmann Multimedia Service
  9526.         Inh. Frank Gadegast         Dipl. Ing. Stefan Hartmann
  9527.  
  9528.                             present
  9529.  
  9530.         =======================================================
  9531.                The Internet MPEG CD-Rom    Version 1.0
  9532.                       Saturday  APRIL  15th  1995
  9533.         =======================================================
  9534.  
  9535. * Get yourself the latest MPEG Video and MPEG Audio software tools !
  9536.   ( e.g. includes VMPEG 1.2b for Win3.x MPEG Video software player)
  9537.  
  9538. * Listen to over 150 songs from the Internet Underground Music Archive (IUMA)!
  9539.   (without having to download a single one ! incl. XingSound MPEG Audio player)
  9540.  
  9541. * Browse the Internet Offline and click yourself through over 200 MPEG movies !
  9542.   (you don't need to be online, everything is just a click away !)
  9543.  
  9544. * Learn, how to use the World Wide Web , Offline !
  9545.  
  9546. * Try the Demo of this CD-Rom  _ONLINE_  at:
  9547.  
  9548.     http://www.b-2.de.contrib.net/harti/mpegcd.html
  9549.  
  9550.  
  9551.  
  9552. The "Internet MPEG CD-Rom" is a rather unique collection of Multimedia-
  9553. Data stored in a compression-format called MPEG. It includes 600 MB
  9554. of digital movies, sounds, songs and all utilities for composing,
  9555. encoding and decoding, playing and rearranging this multimedia material.
  9556.  
  9557. The "Internet MPEG CD-Rom" is especially compiled for those, who want
  9558. to follow the digital multimedia revolution or who want to develop
  9559. MPEG-utilities or create MPEG-compressed sounds or movies.
  9560.  
  9561. The "Internet MPEG CD-Rom" is NOW available as an ISO-9660 conform CD-Rom disc!
  9562. Readable on DOS, Windows, Windows-NT, OS/2, Ultrix, Unix, MACs, etc ....
  9563.  
  9564. Installation programs and all needed viewers are included for
  9565. Windows, Linux, SunOS and Solaris ...
  9566.  
  9567. "The Internet MPEG CD-Rom"
  9568. includes the FAQs and MPEG utility programs, source-code, movies and
  9569. information-files. Just everything about MPEG-I and now even MPEG-II.
  9570.  
  9571. The CD-Rom includes (in addition to the versions which are stored on the
  9572. ftp-Servers out there) all the versions of the programs and source-code,
  9573. additional movies (including the audio-files) and lots of additional
  9574. informations.
  9575.  
  9576. Additional to any ftp-servers it contains special things, you can't find
  9577. anywhere but here. Like a DOS-port of the Berkeley-MPEG-Encoder, other
  9578. DOS-ports, a security-filter for MPEG-I-video- and -audiostreams called
  9579. secmpeg and secmpaudio, some selfmade movies, new versions and utilities that
  9580. were specially made for THIS CD-Rom and that you will never find on other
  9581. media...
  9582.  
  9583.  
  9584.                    Try and USE the Internet OFFLINE !!!
  9585.  
  9586. To make the "Internet MPEG CD-Rom" interactive, one big hypertext-
  9587. document explains and displays the whole contents of the archive,
  9588. giving the user a powerful tool, called Cello, to browse through
  9589. Megabytes of documentaton and to interactevly select and play hours
  9590. and hours of music and movies.
  9591.  
  9592. The whole archive itself is organized as one big hypertext-document.
  9593. It includes a complete Wide-World-Web (WWW) document, the tools to
  9594. use this document on Windows-, Windows-NT-, Linux-, SunOS- and Solaris-
  9595. machines are included, most UNIX-hosts can include "The Internet MPEG CD-Rom"
  9596. into their hyptertext-services with a single link !!!
  9597.  
  9598.  
  9599. You can find a few of all these WWW-documents as an example under the
  9600. adress:
  9601.  
  9602.     http://www.b-2.de.contrib.net/harti/mpegcd.html
  9603.  
  9604. "The Internet MPEG CD-Rom" contains at least the following sections:
  9605.  
  9606.      24,888,655 E:\AUDIO\MUSIC      20,583,631 E:\NVR
  9607.      49,339,823 E:\AUDIO            12,108,204 E:\PHADESW
  9608.      10,103,748 E:\BIN               3,000,035 E:\UTIL\AMIGA
  9609.         640,532 E:\DEMO                152,576 E:\UTIL\DEC
  9610.      11,618,223 E:\DOC              20,073,867 E:\UTIL\DOS
  9611.       3,157,665 E:\FAQ                 338,116 E:\UTIL\IRIX
  9612.     189,569,667 E:\IUMA\MUSIC        5,390,454 E:\UTIL\MAC
  9613.     191,150,646 E:\IUMA              1,802,240 E:\UTIL\NEXT
  9614.      15,102,123 E:\MOVIES\IFRAME     2,152,491 E:\UTIL\OS2
  9615.      99,083,167 E:\MOVIES\IPBFRAME   5,944,282 E:\UTIL\SPARC
  9616.     114,185,290 E:\MOVIES           30,885,363 E:\UTIL\UNIX
  9617.      52,781,148 E:\MPEG1             3,060,754 E:\UTIL\WINDOWNT
  9618.         250,441 E:\MPEG2             4,042,098 E:\UTIL\WINDOWS
  9619.      37,465,169 E:\NFM\MUSIC        76,842,276 E:\UTIL
  9620.      37,537,740 E:\NFM              23,231,772 E:\VIDEOS
  9621.       3,232,740 E:\WWW
  9622.  
  9623.         Total = 607,537,581 bytes
  9624.  
  9625. Please be sure, to get always the most-up-to-date description
  9626. of "The Internet MPEG CD-Rom" before requesting it ! EMail to:
  9627. harti@b-2.de.contrib.net
  9628.  
  9629. or try to find the latest MPEGFAQ (current Version 3.2).
  9630. Look at the date of this info file, something older than 6 months
  9631. can't be up-to-date !
  9632.  
  9633.  
  9634.            Be faster than the Internet and order now !!!
  9635.  
  9636. Ordering can be done now immediately via email or via letter.
  9637.  
  9638. To obtain "The Internet MPEG CD-Rom" you have the following choices:
  9639.  
  9640. o  fill the ORDER.FRM and send it via e-mail or fax it to Hartmann
  9641.    Multimedia Service (if paying with VISA-card only !)
  9642.  
  9643. o  fill the ORDER.FRM and send it via letter to Hartmann Multimedia
  9644.    Service (only VISA-card and EC-cheques (German Marks only) accepted !)
  9645.  
  9646. o  order it in your book store via:
  9647.  
  9648.        ISBN-number: 3-930736-40-3
  9649.        Title      : The Internet MPEG CD-Rom Version 1.0
  9650.        Publisher  : Hartmann Multimedia Service
  9651.        Author     : PHADE Software, Inh. Frank Gadegast
  9652.  
  9653. o  try our WWW-server and get the latest info via
  9654.    URL=http://www.b-2.de.contrib.net/harti/harti.html
  9655.  
  9656. o  you can order at your local computer or CD-Rom shop
  9657.    (try to convince your local dealer to order from Hartmann Multimedia Service)
  9658.  
  9659.  
  9660.  
  9661.       ORDER-FORM for "The Internet MPEG CD-Rom" [Version 1.0]
  9662.                      Tuesday March  28th  1995
  9663.       =======================================================
  9664.  
  9665. Please fill out this form carefully to order "The Internet MPEG CD-Rom"
  9666. Version 1.0. Then send it via letter to:
  9667.  
  9668.   Hartmann Multimedia Service
  9669.   Dipl.-Ing. Stefan Hartmann
  9670.   Keplerstr. 11 B
  9671.   10589 Berlin, GERMANY
  9672.  
  9673.   Fon    : ++ 49 30 344 23 66
  9674.   Fax    : ++ 49 30 344 92 79
  9675.  
  9676.   E-Mail : harti@b-2.de.contrib.net
  9677.   FTP    : ftp.b-2.de.contrib.net    in pub/harti
  9678.   WEB    : http://www.b-2.de.contrib.net/harti/harti.html
  9679.  
  9680. The price of the MPEG-CD-Rom is DM 49.90, plus
  9681.  
  9682.   o  DM 10 for shipping inside Germany
  9683.   o  DM 15 for shipping inside Europe
  9684.   o  DM 28 for shipping outside Europe.
  9685.  
  9686. The German price already includes 15 % VAT. All other prices are without VAT.
  9687.  
  9688. So the total prices inclusive shipping and handling will be:
  9689.  
  9690. Germany:      59.90 DM
  9691. Europe:       64.90 DM
  9692. International:    77.90 DM
  9693.  
  9694. Shipping will be done via airmail, so you have the fastest delivery !
  9695.  
  9696. So, e.g. if you order one CD-Rom disc from inside Europe and pay
  9697. via EC-cheque, fill the EC-cheque with DM 64,90.
  9698.  
  9699. (Only for Germans:
  9700. Innerhalb Deutschland, setzen Sie bitte den Betrag von DM 59.90 in
  9701. Ihren Euro- oder Verrechnungs-Scheck ein.)
  9702.  
  9703.  
  9704. Feel free to ask for our special price list for distributors,
  9705. contributors or for special prices for bundling with other hard- and software.
  9706.  
  9707. If you order several CD-Rom's, you only have to add the
  9708. shipping fees once !
  9709.  
  9710. Exchange rate today is about : 1 US$ = 1.40 DM,
  9711. but please fill out all cheques in German Deutsch Marks (DM) only !!!
  9712.  
  9713.  
  9714. By signing the order you agree to the following terms:
  9715.  
  9716. The use of "The Internet MPEG CD-Rom Version 1.0" is limited to one
  9717. local area network or one single computer.
  9718.  
  9719. The re-use of parts of this CD-Rom disc or the whole CD-Rom without
  9720. the written permission of PHADE Software and Hartmann Multimedia Service
  9721. is strictly prohibited.
  9722. Especially BBS systems, Mailboxes, Networks on the Internet, ftp- or HTTP-
  9723. server or Online-Services like CompuServe(R) do NOT have the permission
  9724. to re-use the contents of this CD-Rom for the benefit of their users.
  9725. Please ask PHADE Software for that permission and Hartmann Multimedia Service
  9726. for the conditions !
  9727.  
  9728. Some single programs, tools, documentation files or streams can be
  9729. copied and used for whatever purpose, according to the limitations
  9730. from the original authors, because they are Shareware or freeware.
  9731.  
  9732. It is strictly prohibited to use the
  9733.  
  9734. o installation files (like INSTALL.EXE, INSTALL.HLP, the install-scripts)
  9735.  
  9736. o utilities copyrighted by PHADE Software (like DBMP.EXE, BROWSER.EXE,
  9737.   WINEXE.EXE), the CD-Rom documentation files
  9738.  
  9739. o HTML-pages and their pictures
  9740.  
  9741. o sound-, pictures-, text- and other files belonging into the audio-
  9742.   archives "IUMA", "NFM" or "BerlinBands"
  9743.  
  9744. o all MPEG-streams that are not already available in the Internet, like
  9745.   most of the MPEG-1-systemstreams, other streams and the Intro,
  9746.   consisting of MPEGCD.M1V, MPEGCD.MPG, MPEGCD.MP2 and MPEGCD.WAV
  9747.  
  9748. for another purpose than in conjuction with using this CD-Rom disc. A copy of
  9749. those files for a different purpose is strictly prohibited and protected
  9750. by German Law.
  9751.  
  9752. The music of the Intro is copyrighted by Stefan Hartmann, Hartmann
  9753. Multimedia Service, Berlin and should not be copied either.
  9754.  
  9755. PHADE Software claims the compilation copyright. Other projects should
  9756. not benefit from copying the structure, methods or utility-combinations
  9757. developed, tested and used for this CD-Rom disc.
  9758.  
  9759.  
  9760. And now for our German customers:
  9761.  
  9762. Die Internet MPEG CD-Rom ist eine einzigartige Kollektion von MPEG- Audio-
  9763. und Video-Daten. Sie enthΣlt ca. 600 MB digitale MPEG-Filme, MPEG-Songs
  9764. (inclusive Internet Underground Music Archiv) und alle Utilities und Infos,
  9765. die gebraucht werden, um das Material rein per Software abzuspielen, zu
  9766. schneiden, zu variieren und zu erzeugen.
  9767.  
  9768. Die CD ist eine ISO9660 CD-Rom und kann auf DOS/Windows-, allen UNIX-Systemen
  9769. und MACs gelesen werden. Sie enthΣlt  MPEG-Tools und Utilities fⁿr diese
  9770. Platformen. Alle Utilities sind Shareware oder Public Domain.
  9771.  
  9772. Die Internet MPEG CD-Rom wurde als interaktives HTML-Hypertext-Dokument
  9773. organisiert, so da▀ Sie sich  mit einem WWW-Viewer durch das Archiv klicken
  9774. k÷nnen, ohne dabei den ▄berblick zu verlieren.
  9775. So k÷nnen Sie sich interaktiv per Mausklick durch ⁿber 150 MPEG-Songs von
  9776. 40 Bands und durch ⁿber 200 MPEG-Filme bewegen !
  9777.  
  9778. Unter Windows wird der CELLO-WWW-Viewer installiert, mit dem Sie OFFLINE
  9779. durch das Internet "surfen" k÷nnen.
  9780. (alle  WWW-Seiten auch unter Unix und auf MACs abrufbar !)
  9781.  
  9782. Lernen Sie, wie das Internet funktioniert, OFFLINE von der CD ! Sie brauchen
  9783. keine Modem-Verbindung zum Netz ! Keine langen Download-Wartezeiten mehr !
  9784. Alles ist nur einen Klick entfernt !
  9785. Erleben Sie die Welt der neusten multimedialen Kompressionstechniken, die
  9786. Ihnen Stunde fⁿr Stunde Musik und Filme bringt !
  9787. Ein Klick und Sie h÷ren via Realtime-Software-MPEG-Audio-Player die Bands in
  9788. CD-QualitΣt ! Noch ein Klick und Sie sehen die MPEG-Filme rein per
  9789. Software-Playback ! Keine MPEG-Hardware erforderlich ! Seien Sie schneller als
  9790. das Internet, holen Sie sich diese CD-Rom:
  9791.  
  9792. The Internet MPEG-CD-Rom !
  9793.  
  9794.  
  9795. ====================== cut here and mail or email this part only ! ==========
  9796.  
  9797.  
  9798.  
  9799. Name         : _____________________________________
  9800. First Name   : _____________________________________
  9801. Title        : _____________________________________
  9802. Company      : _____________________________________
  9803.  
  9804. Address      : _____________________________________
  9805. Town         : _____________________________________
  9806. Post code    : _____________________________________
  9807. Country      : _____________________________________
  9808.  
  9809. Phone        : _____________________________________
  9810. Fax          : _____________________________________
  9811. E-mail       : _____________________________________
  9812.  
  9813. Enter here the number of CD-Rom's you want to order (defaults
  9814. to 1):
  9815.  
  9816.     (  ) number of CD-Rom's
  9817.  
  9818. I pay "The Internet MPEG CD-Rom" by ...
  9819.  
  9820.     ( ) VISA-card, include your Card-Nr.: _____________________
  9821.  
  9822.                       Name of cardholder: _____________________
  9823.  
  9824.                          Expiration date: _____________________
  9825.  
  9826.     ( ) EC-Cheque, please fill in DM (German Deutsch Marks, only !)
  9827.     ( ) Verrechnungsscheck (nur in Deutschland, only inside Germany)
  9828.  
  9829.  
  9830.  
  9831.            =============       ======================================
  9832.              (date)                     ^-- sign here
  9833.  
  9834. ====================== cut here  cut here  cut here =======================
  9835.  
  9836. --
  9837. Hartmann Multimedia Service
  9838. Dipl. Ing. Stefan Hartmann
  9839. Keplerstr. 11 B, 10589 Berlin, Germany
  9840. Tel: ++ 49 30 344 23 66   FAX: ++ 49 30 344 92 79
  9841. email: harti@contrib.de     harti@b-2.de.contrib.net
  9842. Web access: http://www.b-2.de.contrib.net/harti/harti.html
  9843.  
  9844. ---------------------------------------------------------------------------
  9845.  
  9846. ~Subject: Conversion, WWW and CD-Rom production service
  9847.  
  9848. 1) PHADE Software is offering a video-conversion-service !
  9849.  
  9850. A conversion of 1 MB video (GL,DL,MPEG,AVI,DIB-seq, e.g.)
  9851. to one or the other format cost currently 30DM (20$).
  9852. Over 10 MB gets then really cheap only 15DM (10$).
  9853. Audio conversion is possible too (AVI, WAV, AU) and costs
  9854. the half of the video-price (but is included if there is
  9855.   video-conversion).
  9856.  
  9857. 2) PHADE Software is offering WWW-server design
  9858.  
  9859. Beeing expirienced with right now to CD-Rom WWW-productions
  9860. and the configuration, design and programming of several
  9861. HTTP-server PHADE Software can offer a complete implementation
  9862. of HTTP-server.
  9863.  
  9864. 3) PHADE Software is offering CD-Rom productions
  9865.  
  9866. Having two own CD-Rom selling successfully in the market
  9867. and having programmed and designed several others, PHADE
  9868. Software can offer quick, high-quality interfaces to
  9869. CD-Roms. Multimedia extensions included, several platforms
  9870. supported.
  9871.  
  9872.  
  9873. Please send any jobs or commercial mail to
  9874.  
  9875.     phade@contrib.de
  9876.  
  9877. ---------------------------------------------------------------------------
  9878.  
  9879. ~Subject: How can I order information from C-CUBE ?
  9880.  
  9881. Announcing C-Cube product information request via E-Mail
  9882.  
  9883. All requests for general C-Cube product literature should be forwarded to:
  9884.  
  9885.     literature@c-cube.com
  9886.  
  9887. Requests for specific JPEG or MPEG product information should be forwarded to:
  9888.  
  9889.     jpeg@c-cube.com
  9890.     mpeg@c-cube.com
  9891.  
  9892. Please include your complete name, address, phone and fax numbers in your
  9893. request. Thank you. C-Cube Microsystems
  9894.  
  9895.  
  9896. ===========================================================================
  9897.  
  9898. ~Subject: SECTION 9. - ADDITIONAL INFORMATION
  9899.  
  9900. Here you find hints about how to find other documents, or questions
  9901. and their answers that are not having their own section so far !
  9902.  
  9903. -------------------------------------------------------------------------------
  9904.  
  9905. ~Subject: What are the MPEG standard documents ?
  9906.  
  9907. From: billd@cray.com (Bill Davidson)
  9908. Date: 21 Apr 94 02:16:32 MET
  9909.  
  9910. I just connected to the Document Center WAIS server at wais.service.com
  9911. to find out what MPEG documents cost.  This is what I found:
  9912.  
  9913. Title                            Pages    Price(US$)
  9914.  
  9915. ISO/IEC-11172-1 - PART 1: SYSTEMS, INFORMATION        60    158.75
  9916.     TECHNOLOGY - CODING OF MOVING PICTURES &
  9917.     ASSOCIATED AUDIO FOR
  9918.  
  9919. ISO/IEC-11172-2 - PART 2: VIDEO, INFORMATION TECHNOLOGY    122    204.00
  9920.     - CODING MOVING PICTURES & ASSOCIATED AUDIO FOR
  9921.     DIGI
  9922.  
  9923. ISO/IEC-11172-3 - PART 3: AUDIO, INFORMATION TECHNOLOGY    157    214.25
  9924.     - CODING OF MOVING PICTURES & ASSOCIATED AUDIO
  9925.     FOR D
  9926.  
  9927. ISO/IEC-CD-11172 - INFORMATION TECHNOLOGY - CODING OF    0    207.00
  9928.     OF MOVING PICTURES & ASSOCIATED AUDIO - FOR
  9929.     DIGITAL STORAGE
  9930.  
  9931. Is this a mistake or are standards documents really rediculously
  9932. priced?  Since these would be for my own personal use, I have to pay
  9933. for them out of my own personal pocket.  Just one of these eats my book
  9934. budget for quite a while.
  9935.  
  9936. I realize that they have to make money but this has got to be about a
  9937. 1000% markup over printing costs; even assuming low volumes.
  9938.  
  9939. ---------------------------------------------------------------------------
  9940.  
  9941. ~Subject: So, the Xing decoder is cheating, right ?
  9942.  
  9943. [ About what Xing is messing up again ... ]
  9944.  
  9945. Date: Mon, 3 Jan 1994 12:20:33 -0800 (PST)
  9946. From: Jared V Boone <jboone@patriot.wtfd.orst.edu>
  9947.  
  9948. Unfortunately, my program DOES NOT decode in real time.  But then, Xing's
  9949. program cheats.  It does not decode the entire file, but plays the lower
  9950. half of the subbands and only one channel of a stereo pair.  My program
  9951. will decode the whole thing, but there's a price to be paid.  Decoding
  9952. 'together.mp2' takes approximately 797 seconds on a Intel 486DX2-66
  9953. Windows NT/Visual C++ PC, and 1152 seconds on a Intel 486DX2-66 NetBSD/GCC
  9954. V2.4 UNIX system.  So I guess that's about 3-5 times slower than necessary
  9955. for real-time playback.  I've got some tricks I want to try, but they'll
  9956. involve a lot of code modification.  I also don't think they'll make THAT
  9957. much difference.  We may be asking these processors to do more than they can.
  9958.  
  9959. I'll keep you posted...
  9960.  
  9961. Jared Boone (jboone@patriot.wtfd.orst.edu)
  9962.  
  9963. ---------------------------------------------------------------------------
  9964.  
  9965. ~Subject: What is Aware Inc. doing ?
  9966.  
  9967. [ As of 1/1/94, a little bird told me... ]
  9968.  
  9969. Aware Inc. is considering making demo versions of their high quality MPEG
  9970. audio players/converters for Macs and SGIs available on the IUMA.
  9971.  
  9972. -IUMA staff
  9973.  
  9974. ---------------------------------------------------------------------------
  9975.  
  9976. ~Subject: Will MPEG be included in QuickTime ?
  9977.  
  9978. From: mwilliam@envy.Reed.Edu (Son of Sam)
  9979. Date: 24 Mar 1994 09:07:39 GMT
  9980.  
  9981. I read a press release for Quicktime 2.3 (due to developers this month :)  
  9982. and Apple claims that with this new version of their extension one can
  9983. get 15 fps at 640 x 480 on an LC 475! and Full motion (30 fps) at the next  
  9984. screen size down.... 
  9985.  
  9986.     That's decent for a low horsepower machine.  Whether or not this  
  9987. proves itself in practice, we'll see...
  9988.  
  9989.     But the real point of this post revolves around apple's  
  9990. announcement that QT2.3 incorporates MPEG technology... That's right, now,  
  9991. instead of needing to convert MPEG to QT, Macs will be MPEG savvy.  It  
  9992. also mentions that you'll be able to encode MPEG's (with sound) with your  
  9993. Mac...
  9994.  
  9995. ---------------------------------------------------------------------------
  9996.  
  9997. ~Subject: What's about MPEG-2 software ?
  9998.  
  9999. From: cfogg@netcom.com (Chad Fogg)
  10000. Date: Wed, 20 Apr 1994 18:05:04 -0700
  10001. Message-Id: <199404210105.SAA14372@mail.netcom.com>
  10002. Subject: Re:  MPEGFAQ31: call for papers
  10003.  
  10004. The MPEG Software Simulation Group, a development effort comprised 
  10005. of MPEG committee participants, will soon release both an encoder 
  10006. and decoder for MPEG-1 and MPEG-2 video.  Principle contributors 
  10007. of the MPEG-2 S/W are: Stefan Eckart (Univ. Munich), Chad Fogg (Xenon
  10008. Microsystems), and Cheung Auyeung (Motorola). Systems software will be 
  10009. included at a later date.  
  10010.  
  10011. Also, the Committee Draft of ISO/IEC 11172-5 (Part 5) containing 
  10012. software of MPEG-1 Systems, Video, and Audio will be presented
  10013. in May 1994.
  10014.  
  10015. ---------------------------------------------------------------------------
  10016.  
  10017. ~Subject: What about good MPEG Hardware encoders (Optivision) ?
  10018.  
  10019. OptImage does sell one (2 actually: Mac&PC)) MPEG-hardware-boards along 
  10020. with other tools (multiplexer, disc builder, disc burner...)
  10021.  
  10022. please change the contact point to:
  10023.  
  10024.     info@optimage.com or sales@optimage.com
  10025.  
  10026. We have a Real-Time full SIF MPEG encoding board from Optivision.
  10027. The board can only do I and P frames now, but B frames will be supplied
  10028. once new Microcode is available from C-Cube.
  10029.  
  10030. How much is the Encoder board ? Probably very expensive.. ?
  10031.  
  10032. [ about 20.000 $ !!! ]
  10033.  
  10034. The streams from this board have a few artifacts, but over-all look
  10035. quite good.
  10036.  
  10037. Their telephone number in the US is:
  10038.  
  10039.     (415) 855-0200
  10040.  
  10041. ---------------------------------------------------------------------------
  10042.  
  10043. ~Subject: What's about CD-I ?
  10044.  
  10045. From: Morten Hjerde <100034.663@compuserve.com>
  10046. Date: 17 Sep 93 13:08:21 EDT
  10047. Subject: Re: MPEG-FAQ Audio-part ?
  10048.  
  10049. The people I know is working on MPEG is Philips/Compression Labs for their
  10050. "digital video" CD-I's. Digigram in France is producing some nice MPEG cards
  10051. for the PC. You would want to avoid their older PCX3 cards because their
  10052. MPEG implementation were a little odd. Their new PCX5 and PCX3 should be
  10053. fine. Cardinal are introducing an MPEG driver for their new PC card. The driver
  10054. has not been released. It's developed by Xing. I've played around with
  10055. earlier Xing MPEG Audio stuff and it looked and sounded nice. C-Cube also
  10056. have written an MPEG codec (for the AD2015 I believe). I don't know if they
  10057. are doing anything with it. For broadcast
  10058. industry use there are several others, also a couple of German vendors that
  10059. makes stand-alone units. I don't have their names here. Here in Norway Tandberg
  10060. are making a logger w. MPEG compression.
  10061. (I have no connection to any of the above)
  10062.  
  10063. Source code? I was hoping you could tell me that <g>.
  10064.  
  10065. ---------------------------------------------------------------------------
  10066.  
  10067. ~Subject: What is the PCMotion Player ?
  10068.  
  10069. From: kothary@mprgate.mpr.ca
  10070. Date: Wed, 06 Oct 93 16:12:22 PDT
  10071.  
  10072. I recently bought the Optibase PCMotion Player.  This is the real 
  10073. time MPEG 1 decompressor.  I have only tested it with a couple of 
  10074. clips so far but it seems to work very well.  The decoded picture is 
  10075. the best I have seen so far.  There are very few artifacts. The two 
  10076. clips I have tested to date are tigers.mps ( a system level stream 
  10077. they included with the board) and starwars.mpg (an older video level 
  10078. clip I had sitting around.) The tigers clip was very good while the 
  10079. Star Wars was not nearly as good.  I don't know if this reflects 
  10080. advances in encoder technology or that Optibase does some funny 
  10081. stuff with their files.  
  10082.  
  10083. The board was very easy to install and ran pretty much the first 
  10084. time.  The only problems I had with the company are that they are 
  10085. very difficult to contact and seem to be understaffed.  I constantly 
  10086. hear the excuse that Mr X has not been able to contact me because he 
  10087. is very busy since he is on N different projects.  Also they seem to 
  10088. be a funny company in that their employees seem to continually shift 
  10089. between their Isreal and two US offices.  As you can imagine, it is 
  10090. very difficult to contact people who constantly change continents!
  10091.  
  10092. The other big problem with the board is that it can only take data 
  10093. in through the ISA bus.  It is not clear how to use this sort of 
  10094. card in a network unless one is willing to dedicate the entire PC to 
  10095. just one application.  The bus on my PC seems quite full when I use 
  10096. this card.  I think using either a T1, MVIP, SCSI, etc interface 
  10097. might make a more usuable card.  
  10098.  
  10099. Overall, for the kind of money they want, it seems to be a 
  10100. worthwhile board except the utility is limited to evaluation of MPEG 
  10101. and some composing rather than watching actual movies since 
  10102. networking is weak.
  10103.  
  10104. -------------------------------------------------------------------------------
  10105.  
  10106. ~Subject: What is the MPEG-2 ISO number ?
  10107.  
  10108. From: Tom Pfeifer <pfeifer@fokus.gmd.de>
  10109. Date: Fri, 29 Apr 1994 16:26:01 +0200
  10110.  
  10111. Heres the number of the MPEG-2 commission draft:
  10112.  
  10113. Workgroup ISO/IEC JTC 1 SC29N 660
  10114.  
  10115. Standard ISO-CD 13818 - {1,2,3} (like usual {system, video, audio})
  10116.  
  10117. -------------------------------------------------------------------------------
  10118.  
  10119. ~Subject: Some papers about MPEG-audio
  10120.  
  10121. From: scott.k.diamond@email.HUB.TEK.COM
  10122. Subject: MPEG Audio
  10123. Date: Wed, 25 Jan 1995 18:47:02 -0800
  10124.  
  10125. ISO-MPEG-1 Audio: A Generic Standard for Coding of High Quality 
  10126.     Digital Audio
  10127. Karlheinz Brandenburg and Gerhard Stoll
  10128. Journal of the Audio Engineering Society
  10129. October 1994, Volume 42, Number 10
  10130. Pages 780-792
  10131.  
  10132. Guide to MPEG-1 Audio Standard
  10133. Seymour Shlien
  10134. IEEE Transactions on Broadcasting
  10135. December 1994, Volumne 40, Number 4
  10136. Pages 206-218
  10137.  
  10138. Wideband Speech and Audio Coding
  10139. Peter Noll
  10140. IEEE Communications Magazine
  10141. November 1993, Volume 31, Number 11
  10142. Pages 34-44
  10143.  
  10144. Signal Compression Based on Models of Human Perception
  10145. Nikil Jayant, James Johnston and Robert Safranek
  10146. Proceedings of the IEEE
  10147. October 1993, Volume 81, Number 10
  10148. Pages 1385-1421
  10149.  
  10150. Overview of the MPEG/Audio Compression Algorithm
  10151. Proceedings of the SPIE, Volume 2187, 1994
  10152. pages 260-273
  10153.  
  10154.                Scott Diamond
  10155.     \       /       Tektronix, Audio Measurement Group
  10156.      / \         P.O. Box 500, M.S. 58-639
  10157.     < s >        Beaverton, Oregon 97077-0001
  10158.      \ /         wk: (503) 627-6304  hm: (503) 643-6779
  10159.    /     \       scott.k.diamond@tek.com
  10160.  
  10161. -------------------------------------------------------------------------------
  10162.  
  10163. ~Subject: Where can I find more documents about what Berkeley is doing ?
  10164.  
  10165. From: Larry Rowe <larry@plateau.cs.Berkeley.EDU>
  10166. Date: Thu, 24 Mar 1994 17:39:36 -0800
  10167.  
  10168. o papers/94MMComputing.ps.Z - copies of slides from a highlight talk at
  10169.   the UC Berkeley Industrial Liason Program on multimedia computing.  Main
  10170.   topics: importance of mosaic/www, video-on-demand architectures and problems,
  10171.   and desktop video conferencing.
  10172.  
  10173. o papers/CMMPEG-SPIE94.ps.Z - A paper describing the heuristics we used
  10174.   to implement synchronized mpeg video and sparc audio playback in the
  10175.   CMPlayer system.
  10176.  
  10177. o papers/VodsArch-SPIE94.ps.Z - A paper describing the architecture of the
  10178.   the Berkeley Distributed VOD System that is designed to store thousands
  10179.   of hours of video material on tertiary storage devices that can be staged
  10180.   to video file servers.
  10181.  
  10182. o papers/VodsDB-SPIE94.ps.Z - A paper that describes the metadata database
  10183.   in the Berkeley Distributed VOD System.  The database contains a variety
  10184.   of indexes to the video material which a user can query to locate material
  10185.   of interest.
  10186.  
  10187. o papers/VideoCompression-Usenix94.*.ps.Z - Copies of slides from an invited
  10188.   talk on Video Compression given at Usenix '94 by L. Rowe.  The BW file has
  10189.   a black and white version of the slides with 2 to a page, and the Color file
  10190.   a color version with 1 slide to a page.
  10191.  
  10192. o papers/dv-at-ucb.txt -- A survey of digital video research in the EECS
  10193.   Department at U.C. Berkeley.  This article will appear in the 1994 EECS/ERL
  10194.   Research Summary.
  10195.  
  10196. o papers/compressed.ps.Z
  10197.  
  10198. o papers/VodsProp93.ps.Z - a revised version of the Berkeley VOD Server
  10199.   proposal first released on August 20, 1993.
  10200.  
  10201. o papers/VODProp-Rowe.ps.Z -- a rough draft of a proposal to be submitted
  10202.   to NSF to build a video-on-demand system.  Novel feature of the system
  10203.   is that it includes a large tertiary storage archive and a metadata
  10204.   database with an ad hoc query browser to search for particular videos.
  10205.   The archive server talks to several video file servers so that an
  10206.   organization can share file servers.
  10207.  
  10208. o papers/MM93Talk.ps.Z is a copy of the slides used for the talk at the ACM
  10209.   Multimedia 93 conference for the previous paper. The performance
  10210.   numbers comparing the mpeg player on different platforms were updated 
  10211.   the week before the conference so they reflect the most recent results.
  10212.  
  10213. o papers/{Mpeg94.txt,VODarch94.txt,VODdb94.txt} -- abstracts submitted
  10214.   to SPIE '94 that describe recent work on integrating our mpeg video 
  10215.   decoder into the CMPlayer and the design of the UCB video-on-demand system.
  10216.  
  10217. ---------------------------------------------------------------------------
  10218.  
  10219. ~Subject: Is there a book about MPEG ?
  10220.  
  10221. From: Chad Fogg <cfogg@ole.cdac.com>
  10222. Date: Mon, 4 Oct 1993 02:02:58 -0700
  10223.  
  10224. Q. Is there a book on MPEG compression?
  10225. A. Yes, there will be a book published in Spring 1994 by the same
  10226.    authors who wrote the JPEG book (Bill Pennebaker, Joan Mitchell)
  10227.    with Didier Le Gall as an additional co-author.
  10228.  
  10229. ---------------------------------------------------------------------------
  10230.  
  10231. ~Subject: Who are CD-I producers ?
  10232.  
  10233. There is a company called:
  10234.  
  10235.     ProLearn, Herr Vigneron
  10236.  
  10237. [ I would really like to start a list here. Please feedback me ;o) ]
  10238.  
  10239. ---------------------------------------------------------------------------
  10240.  
  10241. ~Subject: Where can I get VideoCD and CD-I coding ?
  10242.  
  10243. Get your own VideoCD or CD-I done via the service bureau !
  10244.  
  10245. We offer you the full service to produce an MPEG VideoCD or a CD-I disk with
  10246. MPEG full-motion video on it for you.
  10247.  
  10248. Just provide the video tapes (S-VHS / Hi-8) and get your own VideoCD back,
  10249. playable on Sigma Design's Reel Magic MPEG card, Amiga CD-32 and
  10250. Phillips CD-I player. (soon coming out: GOLDSTAR- and JVC- and SAMSUNG-VideoCD 
  10251. players for around 350 US$ enduser price)
  10252.  
  10253. (In this moment we only offer PAL standard VideoCDs and CD-Is, which also could
  10254. be played with NTSC players; call for NTSC version)
  10255.  
  10256. Please call for current rates:
  10257.  
  10258. Hartmann Electronics
  10259. Mr. Dipl. Ing. Stefan Hartmann
  10260. Berlin, Germany
  10261.  
  10262. Tel: ++ 49 30 344 23 66
  10263.  
  10264. email:
  10265. harti@mikro.ee.tu-berlin.de
  10266.  
  10267. ---------------------------------------------------------------------------
  10268.  
  10269. ~Subject: Where can I do MPEG encoding ?
  10270.  
  10271. We are offering MPEG-1 encoding from VHS, S-VHS, Video8 and Hi-8 tape.
  10272.  
  10273. You send us your tape, we will encode it to MPEG-1 standard IBP MPEG  
  10274. SYSTEM stream, compatible with White book or Reel Magic format.
  10275.  
  10276. Standard Format 352x288 PAL or 352x240 NTSC will be supported
  10277.  
  10278. Then we can also write it for you on a CD-ROM disk, so that you can play  
  10279. it on a Philips CD-I player with Digital Video Cartridge or via an MPEG  
  10280. player card like the Sigma Reel Magic card inside a PC via a CD-ROM drive.
  10281. Up to 70 minutes of Digital MPEG Video and Audio will fit on a single CD  
  10282. disk !
  10283.  
  10284.  
  10285. Rates are:
  10286.  
  10287. 70 DM per Minute (with at least 15 minutes for one order)
  10288. 60 DM per Minute (if it gets more than 30 minutes)
  10289.  
  10290. Writing it on CD-Rom is an additional 150 DM charge per order.
  10291.  
  10292. All prices without VAT.
  10293. (Current exchange rate is about 1.60 DM / 1 US$)
  10294.  
  10295. Please let me know, what you need.
  10296.  
  10297. Best regards, Dipl. Ing. Stefan Hartmann, c/o Hartmann Multimedia Service,  
  10298. Berlin, Germany
  10299.  
  10300. email to:
  10301. harti@contrib.de
  10302.  
  10303. FAX:   ++ 49 30- 344 92 79
  10304. Phone: ++ 49 30- 344 23 66
  10305.  
  10306. ---------------------------------------------------------------------------
  10307.  
  10308. ~Subject: What the problem with all these file extensions for MPEG-files ?
  10309.  
  10310. Hm, nobody standarized the file extensions yet, the are just common use.
  10311. the first MPEG-users (Xing) just used .mpg for a file extension, but
  10312. they had their special (non MPEG-standard) format. Then the "invented"
  10313. .mp2 for audio only files (well .mp2 looks more like MPEG-2, does it ?
  10314. Some had file-extension they wanted, some ignored MS-DOS file systems ...
  10315.  
  10316.  
  10317. The following extensions are there:
  10318.  
  10319. .mpg       could be everything ;o) usally only Xing-format (only I-frame)
  10320. .mps       MPEG-1 IPB Systemstream (video and audio)
  10321. .m1v       MPEG-1 IPB only video or systemstream
  10322. .mpv       MPEG-1 IPB only video (sometime even .vmp)
  10323.  
  10324. .mp2       MPEG-1 only audio (mostly layer 1 or 2)
  10325. .mpa       MPEG-1 only audio (mostly layer 1 or 2) (sometimes even .amp)
  10326. .l3        MPEG-1 only audio (layer 3)
  10327.  
  10328. .m2v       MPEG-2 IPB only video (is there some MPEG-2 audio out ?)
  10329.  
  10330. My own idea for file extension looks like this: 
  10331.  
  10332. .m1s       MPEG-1 IPB systemstream (video and audio)
  10333. .m1v       MPEG-1 IPB videostream
  10334. .m1a       MPEG-1 IPB audiostream
  10335.  
  10336. .m2s       MPEG-2 IPB systemstream (video and audio)
  10337. .m2v       MPEG-2 IPB videostream
  10338. .m2a       MPEG-2 IPB audiostream
  10339.  
  10340. There is no real need for a support of I-frame only streams anymore.
  10341. There are PD-players with IPB-frame support for every platform now
  10342. and the new players can play the old streams too.
  10343.  
  10344. Roman Czyborra is working on getting these extension registered for
  10345. WWW-use, so let's see ...
  10346.  
  10347. Look up the URL=http://www.cs.tu-berlin.de/~czyborra/registrations/ for
  10348. how this process is going on.
  10349.  
  10350. ---------------------------------------------------------------------------
  10351.  
  10352. ~Subject: How can I do RTP encapsulation of MPEG1/MPEG2 ?
  10353.  
  10354. There is a Internet Draft about that. It is usally called:
  10355.  
  10356.     draft-hoffman-rtp-mpeg-encap-01.txt
  10357.  
  10358. Here's the excerpt:
  10359.  
  10360. This draft describes a packetization scheme for MPEG video and audio
  10361. streams.  The scheme proposed can be used to transport such a video or audio
  10362. flow over the transport protocols supported by RTP.  Two profiles are
  10363. described. The first is designed to support maximum interoperability with
  10364. MPEG2 System environments.  The second is designed to maximize simplicity of
  10365. implementation and to leverage other efforts within IETF.
  10366.  
  10367.  
  10368. ~Subject: Wo kann ich den MPEG-standard bestellen ?
  10369.  
  10370. [ Only for Germans... ]
  10371.  
  10372. Ihr koennt den MPEG-draft-I beim Beuth Verlag bekommem.
  10373.  
  10374.  
  10375. ===========================================================================
  10376.  
  10377. ~Subject: SECTION 10. - WHERE TO FIND MORE INFOS
  10378.  
  10379. ---------------------------------------------------------------------------
  10380.  
  10381. ~Subject: What newsgroups discuss MPEG ?
  10382.  
  10383. Well, first you can check the related news-groups:
  10384.  
  10385.   comp.graphics, comp.graphics.animation, comp.compression, comp.multimedia,
  10386.   comp.sys.amiga.multimedia, comp.mail.multi-media,
  10387.   alt.binaries.pictures.utilities
  10388.  
  10389. The first part of this FAQ about MPEG came from Mark Adler, published
  10390. in the FAQ for the newsgroup 'comp.compression'.
  10391.  
  10392. ---------------------------------------------------------------------------
  10393.  
  10394. ~Subject: How can 'archie' help me ?
  10395.  
  10396. Then you can ask 'archie' to find all NEW mpeg-releated software
  10397. by sending the following mail (with no title):
  10398.  
  10399.   set search sub
  10400.   prog mpeg mpg
  10401.   quit
  10402.  
  10403. to one of the following archie-mail-servers:
  10404.  
  10405.   archie@archie.ans.net
  10406.   archie@archie.rutgers.edu
  10407.   archie@archie.sura.net
  10408.   archie@archie.mcgill.ca
  10409.   archie@archie.funet.fi
  10410.   archie@archie.au
  10411.   archie@archie.doc.ic.ac.uk
  10412.  
  10413.  
  10414. Or look for it with archie on the Internet like this:
  10415.  
  10416. telnet 128.214.6.102
  10417. archie
  10418. set search sub
  10419. prog mpeg mpg
  10420.  
  10421. quit
  10422.  
  10423. ===========================================================================
  10424.  
  10425. ~Subject: SECTION 11. - QUESTIONS
  10426.  
  10427. These are some questions, ideas or whatever problems, where still no
  10428. solutions is found or nobody knows an answer. Please contact me via e-mail
  10429. if YOU find a solution for:
  10430.  
  10431. 1) Interleaving should be the next step in MPEG-development.
  10432.    There free audio- and video-code now. Now we have to
  10433.    synchronize it. Stefan Eckhardt and Simmons both can split
  10434.    a full-MPEG-stream, but there is no free code !
  10435.  
  10436.    And Chris Moar's demultiplexer is available, but still only
  10437.    works on UNIX !!
  10438.  
  10439.    So, who's working on it ?
  10440.  
  10441. 2) Are there multimedia-specialized mailboxes out there ? Please send
  10442.    a filelisting of your mpeg-archive, a description of how to obtain
  10443.    the files, costs, connection times, telefon-numbers etc.
  10444.  
  10445. 3) Who can send me informations about MPEG-I-Videos stored on CD-I CD's ?
  10446.    Who can provide a list and keep it up-to-date ?
  10447.    Who can provide information about CD-I and MPEG in general ?
  10448.  
  10449. 4) I'm still looking for a program, that I cant find anymore.
  10450.    "SPRAW", a program to convert real MPEG-stream into Xing-format
  10451.    (well we would really need one, thats doing the other way around).
  10452.    Whos has them ? Who knows more ?
  10453.  
  10454. 5) That MPEG book announced for Spring 1994 ? Is that really out ?
  10455.    How has it's exact title, author names and ISBN-number ?
  10456.    Is the following title right ?
  10457.  
  10458.        "MPEG1 video compression standard"
  10459.  
  10460. 6) Is this FAQ really readable with the FAQ-mode from emacs ?
  10461.    Can you read it with a good news-reader question by question ?
  10462.    Did not try this out ...
  10463.  
  10464.  
  10465. 7) How many people would like to have a CD-Rom containing material
  10466.    for testing MPEG-encoders ? Source material, example streams
  10467.    for several needs, for several formats, comparable encoding
  10468.    results and messurements and all needed encoding, decoding
  10469.    tools could be supplied. If there are enough, we might do some.
  10470.    We already have enough reference material, frames and utils and
  10471.    ideal streams to compare results.
  10472.  
  10473. Please mail to:
  10474.  
  10475.   phade@cs.tu-berlin.de
  10476.  
  10477. if you have more information, than I have.
  10478.  
  10479. ===========================================================================
  10480.  
  10481. The end of ...
  10482.  
  10483.         THE MPEG-FAQ
  10484.         ====================================================
  10485.         PHADE SOFTWARE Leibnizstr. 30, 10625 Berlin, GERMANY
  10486.         Inh. Frank Gadegast          Fon/Fax: +49 30 3128103
  10487.  
  10488.         phade@cs.tu-berlin.de
  10489.         http://www.cs.tu-berlin.de/~phade
  10490.  
  10491. ===========================================================================
  10492.  
  10493.